Files
VitPress-CMS/README.md
2026-06-05 23:22:42 +08:00

113 lines
2.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# VitePress-CMS
VitePress-CMS 是一个面向 VitePress 的可视化内容管理后台。它的目标是让用户通过网页界面管理 Markdown 页面、站点结构、主题配置与 GitHub 发布流程。
## 当前版本
当前项目已经从静态原型升级为 Vue 3 + TypeScript + Vite 工程。
已完成的原型能力:
- 页面目录、搜索与新建页面
- Markdown 编辑与预览切换
- Frontmatter 标题和描述编辑
- 导航栏与侧边栏管理界面
- 站点基础配置界面
- 发布中心与部署状态模拟
## 本地运行
```bash
npm install
npm run dev
```
Windows PowerShell 如果拦截 `npm.ps1`,可以使用:
```bash
npm.cmd install
npm.cmd run dev
```
## 初始账户
项目启动时会自动创建 SQLite 数据库:
```text
data/vitepress-cms.sqlite
```
如果数据库里还没有系统管理员,会自动创建初始账户:
```text
邮箱admin@example.com
密码admin123456
角色system_admin
```
可以通过环境变量修改初始账户:
```bash
CMS_ADMIN_EMAIL=admin@your-domain.com
CMS_ADMIN_PASSWORD=change-me
```
## 构建验证
```bash
npm run build
```
## 测试站点
VitePress 测试站点放在项目内的独立子目录:
```text
test-vitepress/
```
它有自己的 `package.json` 和依赖,不会让 VitePress 成为 CMS 主项目的一部分。这样既方便开发测试,也能保持主项目依赖干净。
运行测试站点:
```bash
cd test-vitepress
npm install
npm run dev
```
## GitHub 连接
当前版本支持两种 GitHub 连接方式:
1. GitHub OAuth 登录后选择仓库。
2. 手动输入 token、owner、repo、branch 和站点目录。
使用 OAuth 登录前,需要创建 GitHub OAuth App并配置环境变量
```bash
GITHUB_CLIENT_ID=xxx
GITHUB_CLIENT_SECRET=xxx
```
开发环境 callback URL
```text
http://localhost:5173/api/github/callback
```
Token 或 OAuth 授权至少需要仓库内容读写权限。保存页面或配置时CMS 会通过 GitHub Contents API 创建 commit。
站点目录示例:
- VitePress 在仓库根目录:留空
- VitePress 在 `docs/`:填写 `docs`
## 下一步
1. 建立 GitHub OAuth 登录流程。
2. 读取仓库中的 `docs/` 页面文件。
3. 解析 `.vitepress/config.ts` 中的常用配置。
4. 将页面和配置修改提交为 GitHub commit。
5. 显示 GitHub Pages 或 Actions 部署状态。