一个现代化博客网站,集成MCP(Model Context Protocol)服务,提供高质量的文章阅读体验和AI增强功能。
本项目构建一个功能完善的博客网站,同时集成MCP服务提供智能交互能力。项目采用迭代开发模式,从MVP核心功能开始,逐步扩展到完整系统。
- 内容管理系统:支持富文本、图片和视频的文章创建与展示
- 分类与标签:多级分类系统和灵活的标签管理
- 用户系统:用户认证、角色权限和个人资料管理
- 搜索功能:全文搜索和智能搜索推荐
- MCP服务:基于SSE的AI增强功能,包括内容分析和搜索优化
- 响应式设计:适配不同尺寸设备的友好界面
- 后台管理:完整的内容和用户管理功能
- 核心框架: React
- 状态管理: Redux Toolkit
- 路由: React Router
- HTTP请求: Axios
- UI组件: Ant Design
- 样式: CSS Flexbox/Grid
- Web框架: FastAPI (Python)
- ORM: SQLAlchemy
- 数据验证: Pydantic
- 认证: JWT
- 文档: Swagger/OpenAPI
- RDBMS: MySQL
- 迁移工具: Alembic
- 框架: FastMCP, Starlette
- 通信协议: SSE (Server-Sent Events)
- 缓存: Redis (可选)
- 容器化: Docker
- 编排: Docker Compose
- Web服务器: Nginx
Blog_project/
├── frontend/ # 前端React应用
│ ├── public/ # 静态资源
│ ├── src/ # 源代码
│ │ ├── components/ # 通用组件
│ │ ├── pages/ # 页面组件
│ │ ├── layouts/ # 布局组件
│ │ ├── services/ # API服务
│ │ ├── store/ # Redux状态管理
│ │ └── ...
│ └── ...
├── backend/ # 后端Python应用
│ ├── app/ # 应用代码
│ │ ├── api/ # API路由
│ │ ├── core/ # 核心配置
│ │ ├── db/ # 数据库模型
│ │ └── ...
│ └── ...
├── mcp_service/ # MCP服务
│ ├── app/ # 应用代码
│ │ ├── resources/ # 资源定义
│ │ ├── tools/ # 工具定义
│ │ ├── prompts/ # 提示模板
│ │ └── ...
│ └── ...
├── docker/ # Docker配置
├── doc/ # 项目文档
└── README.md # 本文件
- Node.js 16+
- Python 3.8+
- MySQL 8.0+
- Docker和Docker Compose(可选,用于容器化部署)
# 进入前端目录
cd frontend
# 安装依赖
npm install
# 启动开发服务器
npm start
# 进入后端目录
cd backend
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
# 安装依赖
pip install -r requirements.txt
# 配置环境变量
cp .env.example .env
# 编辑.env文件,填入必要的配置
# 运行数据库迁移
alembic upgrade head
# 启动开发服务器
uvicorn app.main:app --reload
# 进入MCP服务目录
cd mcp_service
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
# 安装依赖
pip install -r requirements.txt
# 配置环境变量
cp .env.example .env
# 编辑.env文件,填入必要的配置
# 启动服务
python main.py
# 构建并启动所有服务
docker-compose up -d
# 查看服务状态
docker-compose ps
本项目采用MVP(最小可行产品)模式开发,分为以下几个迭代:
- 基础框架搭建 ✅
- 文章展示功能 ✅
- 分类与简单搜索 ✅
- 基本响应式设计 ✅
- 用户认证与个人资料
- 基础管理后台
- 文章创建与编辑功能
- MCP服务基础架构
- 文章资源实现
- 基础工具与提示模板实现
- 搜索功能增强
- 标签系统完善
- 响应式设计优化
- 性能优化与MCP服务增强
详细的项目文档位于 doc
目录下:
- 用户认证采用JWT令牌和密码哈希加密
- API接入权限控制和请求频率限制
- 数据库查询优化和缓存策略
- MCP服务安全措施包括令牌验证和提示注入防护
- 前端代码分割和懒加载优化
- Fork 本仓库
- 创建您的特性分支 (
git checkout -b feature/amazing-feature
) - 提交您的修改 (
git commit -m 'Add some amazing feature'
) - 推送到分支 (
git push origin feature/amazing-feature
) - 打开一个 Pull Request