关于作者

独立创作,持续记录技术与生活

Liam

Liam

独立开发者,专注前端与全栈工程实践,在这里记录技术探索与生活片段。

关于本站

小白龙博客是一套现代化个人博客,记录前端、后端与工程实践。站点以 pnpm Monorepo 全栈 TypeScript 构建:Nuxt SSR 面向访客,Vite+ Admin 面向作者,NestJS API 统一数据与实时能力;同仓库还包含去水印小程序与视频解析等周边应用。除文章阅读外,提供导航收录、留言板、实时聊天、全文搜索与在线赞赏。

功能一览

从阅读到互动,一站完成内容消费与连接

文章阅读 Markdown 渲染、目录导航、暗色模式与 RSS 订阅导航收录 常用网站与工具按分类整理,一键直达友情链接 与志同道合的博主互换链接,一起记录与分享留言板 公开留言与回复,与作者和访客交流想法聊天室 实时文字、图片与 AI 助手,登录后即可参与赞赏支持 微信 / 支付宝在线赞赏,支持作者持续创作全文搜索 快速检索站内文章标题与正文RSS 订阅 通过 feed.xml 订阅最新文章更新

建站历程

从骨架到互动,再到周边生态,按阶段持续打磨

  1. 01

    基础骨架

    pnpm Monorepo、Nuxt 前台、NestJS API 与 Admin 后台落地,统一 TypeScript 与共享类型包

  2. 02

    内容完善

    文章、标签、导航、友链与留言板齐备,阅读与收录成为日常入口

  3. 03

    体验与上线

    Docker Compose 正式环境、HTTPS、搜索与 RSS,站点可稳定对外服务

  4. 04

    互动增强

    登录、实时聊天室、在线赞赏与后台审核,访客与作者的连接更近一步

  5. 05

    周边生态

    去水印小程序与视频解析服务并入同仓,博客之外继续扩展工具能力

周边生态

博客之外的工具与开源延伸

去水印小程序

微信扫码打开,解析短视频分享链接并保存无水印内容

小白龙去水印工具小程序码

微信扫码打开

视频链接解析

部署于 EdgeOne Pages,由 API 代理调用,支撑小程序等多端解析能力

EdgeOne PagesAPI Proxy

技术栈

pnpm Monorepo 全栈 TypeScript:博客前台、管理后台、NestJS API,以及小程序 / 视频解析等周边应用

博客前台

Nuxt 4Vue 3.5Nuxt UITailwind CSS v4Piniamd-editor-v3Socket.io

管理后台

Vite+Element PlusPiniaAxiosmd-editor-v3

API 与数据

NestJS 11Prisma 7MySQL 8.4RedisSocket.ioRabbitMQKafkaAliyun OSS

周边应用

uni-appEdgeOne Pages

工程化

pnpm MonorepoTypeScript 6@blog/sharedVite+ (vp check)Vitest

技术架构

前后端分离 + 多端客户端:访客走 Nuxt SSR,作者用 Admin SPA,小程序等周边应用共用 NestJS API 与共享类型包

  1. 客户端

    • Nuxt 4 SSR博客阅读与互动(PC + H5)
    • Admin SPA内容运营与 RBAC(仅 PC)
    • uni-app MP去水印微信小程序
  2. 接入层

    • NginxHTTPS 反代与静态资源
    • HTTPS / CDN媒体走 OSS CDN
  3. 服务层

    • NestJS APIREST + WebSocket + 任务队列
    • Nuxt SSRPM2 托管前台渲染
    • RabbitMQ去水印 / 爬虫异步任务
    • Kafka接口请求日志事件流
    • EdgeOne视频分享链接解析
  4. 数据与共享

    • MySQL 8.4业务主库(本机)
    • Redis缓存 · Token · 在线数
    • OSS图片与附件对象存储
    • @blog/shared跨端 DTO / 常量

请求流向

  • 浏览器 → Nginx → Nuxt SSR 首屏 → NestJS API(useFetch / CSR)
  • 浏览器 → Nginx 静态 Admin → NestJS API(JWT Bearer)
  • 小程序 → NestJS API;视频解析走 EdgeOne,由 API 代理调用

开始探索

在这里,记录与分享

浏览最新文章,留下你的想法,或与作者建立连接