基于CNB API Issues构建的现代化博客平台,使用Issues作为博客文章的存储后端。
npm install
复制 .env.example 为 .env 并配置相关参数:
cp .env.example .env
编辑 .env 文件:
# CNB API 配置
CNB_TOKEN=your-cnb-api-token-here
REPO_OWNER=your-repo-owner
REPO_NAME=your-repo-name
# 服务器配置
PORT=3000
# 博客配置
BLOG_TITLE=CNB Issues 博客系统
BLOG_DESCRIPTION=基于CNB API Issues构建的现代化博客平台
# 构建前端代码
npm run build:frontend
# 构建后端代码
npm run build:backend
# 或者构建全部
npm run build
# 开发模式
npm run dev
# 生产模式
npm start
打开浏览器访问 http://localhost:3000
GET /api/posts - 获取文章列表GET /api/posts/:id - 获取单个文章POST /api/posts - 创建新文章PUT /api/posts/:id - 更新文章DELETE /api/posts/:id - 删除文章GET /api/posts/search/:query - 搜索文章GET /api/categories - 获取分类列表/workspace/
├── src/ # 源代码目录
│ └── script.ts # 前端TypeScript代码
├── dist/ # 编译输出目录
├── public/ # 静态资源目录
├── server.ts # 服务器端代码
├── index.html # 主页面
├── styles.css # 样式文件
├── package.json # 项目配置
├── tsconfig.json # TypeScript配置
├── tsconfig.frontend.json # 前端TypeScript配置
└── README.md # 项目说明
# 启动开发服务器(自动重新加载)
npm run dev
# 完整开发模式(构建前端+启动服务器)
npm run dev:full
dist/ 目录dist/ 目录public/ 目录npm run buildnpm start在搜索框中输入关键词,系统会自动搜索标题和内容匹配的文章。
CNB API连接失败
文章无法保存
Markdown预览不工作
MIT License
欢迎提交Issue和Pull Request来改进项目。