1 / 10
01 / 10
TSM

Think Site Manager

文档站点管理平台 — 一个后台,管站点、做付费、管发布

产品介绍 v0.0.1 2026@think
02 / 10
平台定位

一句话定义

Think Site Manager = VitePress / VuePress 文档站的 管理后台

站点、用户、文章、权限、发布,全在一个界面里搞定。
平台 dashboard + VitePress 文档站
PLACEHOLDER · images/02-platform-overview.webp
平台 dashboard 截图 + 示例 VitePress 文档站并排
03 / 10
为什么需要

做技术文档,你是否遇到过这些问题?

做技术文档的团队,经常遇到这些痛点 — Think Site Manager 把这些事打包成一个平台。

文档散落各处

多个仓库、多套文档,没法统一管理,版本追溯困难。

付费内容没现成方案

想做付费阅读,要么自己开发,要么用通用方案改造,成本高。

权限控制粗

只能做到登录/不登录,细粒度角色、付费内容隔离都做不到。

发布靠手敲命令

每次发布要 SSH 上服务器,跑 build、scp、解压、reload,慢又易错。

04 / 10
技术架构

三层架构,前后端分离

前端 Vue 3 + Ant Design,后端 Spring Boot 3.3 全家桶,目标 Linux 主机通过 SSH 自动化管理。

浏览器端 / 管理后台

Vue 3 + UmiJS + Ant Design + TypeScript · 数据可视化用 @ant-design/charts

↓ HTTPS / JWT

后端服务 / Spring Boot 3.3

Spring Security + JWT + MyBatis-Plus + Knife4j + MINA SSHD(SSH/SCP) + WebSocket

↓ JDBC / SSH

数据 / MySQL 8.0 + 目标 Linux 主机

5 张业务表 · 主机凭据 AES-256-GCM 加密 · 通过 MINA SSHD 自动化操作

05 / 10
核心能力

5 大核心能力

数据看板 / 邀请码 / 插件下载等支撑能力作为补充。

01

站点管理

CRUD + Token + 在线监测

02

文章付费

单篇标记 + 插件接入

03

角色权限

4 级角色 + 邀请码

04

主机管理

SSH + 一键初始化 nginx

05

一键发布

7 步全自动 + 一键回滚

+ 数据看板(4 卡 + 4 图) · 邀请码管理(封闭注册) · 插件下载(5 分钟接入)
06 / 10
能力 1 · 站点 + 文章

站点 CRUD + 文章付费控制

每个文档站一个实体,自动生成 API Token。文章支持单篇标记免费 / 付费,平台提供 VitePress / VuePress 插件,5 分钟接入。

站点管理

  • 站点增删改查(名称 / 描述 / URL)
  • 自动生成 API Token(UUID)
  • 在线状态实时轮询
  • Token 一键重新生成
  • 站点状态机管理
站点列表
PLACEHOLDER · images/06-sites-list.webp

文章付费控制

  • 单篇标记 免费 / 付费
  • 批量切换付费状态
  • 构建时自动同步文章列表
  • 访客访问触发登录弹窗
  • VitePress / VuePress 双插件
文章列表(带免费/付费标签)
PLACEHOLDER · images/06-articles-list.webp
带免费 / 付费标签
07 / 10
能力 2 · 主机管理

主机管理 + 一键初始化 nginx

点"一键初始化",平台自动 SSH 进去装包、起服务、放行防火墙 — 9 步流水线,前端实时展示。

主机详情页
PLACEHOLDER · images/07-host-detail.webp
带 nginx 状态字段 + Web 终端 tab
  1. SSH 探测(自动识别 Ubuntu / CentOS / Rocky)
  2. 安装 nginx 包
  3. 启动 nginx 服务
  4. 语法校验
  5. 平台主动 HTTP 探测
  6. 防火墙放行 80 / 443
  7. 重测状态
  8. 回写 nginx_status = INSTALLED_ACTIVE

Web 终端直连 PTY

浏览器内 xterm.js,排查问题不用跳堡垒机

08 / 10
能力 3 · 一键发布

一键发布 — 7 步全自动

选站点 → 选主机 → 点发布。后端自动跑 build → SCP → 解压 → reload nginx,前端 SSE 实时进度。

01
启动
02
SSH 预检
03
构建
04
SCP 上传
05
解压
06
reload nginx
07
SUCCESS
SSE 实时进度 + 日志轮询
历史版本一键回滚 + 审计
构建产物复用,跳过重 build
发布抽屉
PLACEHOLDER · images/08-deploy-drawer.webp
左侧历史列表 + 右侧实时进度条 + 日志框(带 [HH:mm:ss] 时间戳)
09 / 10
技术亮点

3 个值得说的技术决策

不是"高大上"的技术堆砌,是真正解决生产问题的工程取舍。

凭据加密

Credentials Encryption

主机 SSH 密码 / 私钥 / passphrase 用 AES-256-GCM 加密,主密钥从 THINK_HOST_CRYPTO_KEY 环境变量读,启动 fail-fast 校验,明文不落盘。

AES-256-GCM fail-fast

权限体系

Auth & RBAC

Spring Security + JWT,4 级角色(系统 / 平台 / 站点 / 普通),配合邀请码注册,平台封闭可控。

Spring Security JWT 4 级 RBAC

一键部署

One-Click Deploy

支持 docker-compose 多容器和 Dockerfile 单容器两种方案,自带 deploy.sh 一键脚本,自动等后端真正就绪才退出。

docker-compose deploy.sh readiness check
10 / 10

三句话总结

1
管站点— 一个后台,管理所有文档站
2
做付费— 5 分钟接入付费阅读
3
管发布— 一键发布到任何 Linux 服务器
哔哩哔哩
https://space.bilibili.com/345920881
文档
https://tsm.webstudy.cool
邮箱
think_mzs@qq.com