4.5 KiB
4.5 KiB
NEX Docus
✨ 特性
- 📝 Markdown 编辑器 - 强大的 Markdown 实时预览和编辑
- 📁 项目管理 - 多项目支持,灵活的文件组织结构
- 🔐 权限控制 - 基于 RBAC 的完善权限管理
- 🔗 文档分享 - 支持密码保护的公开分享链接
- 👥 协作功能 - 项目成员管理和协作编辑
- 📱 响应式设计 - 完美支持桌面和移动端
- 🐳 Docker 部署 - 一键容器化部署
- 🚀 高性能 - 基于 FastAPI 和 React 构建
🏗️ 技术栈
后端
- 框架: FastAPI (Python 3.9+)
- 数据库: MySQL 8.0
- 缓存: Redis 7
- ORM: SQLAlchemy 2.0
- 认证: JWT (python-jose)
- 异步: Asyncio
前端
- 框架: React 18 + Vite
- UI: Ant Design 5
- 路由: React Router 6
- 状态管理: Zustand
- Markdown: react-markdown + rehype
- HTTP: Axios
📦 快速开始
使用 Docker 部署(推荐)
# 1. 克隆项目
git clone <your-repo-url>
cd "NEX Docus"
# 2. 配置环境变量
cp .env.example .env
vim .env # 修改配置
# 3. 一键部署
./deploy.sh init
详细部署文档请查看 DEPLOY.md
本地开发
后端开发
cd backend
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# 安装依赖
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
# 配置环境变量
cp .env.example .env
vim .env
# 初始化数据库
python scripts/init_db.py
# 启动服务
python main.py
后端服务将运行在 http://localhost:8000
API 文档: http://localhost:8000/docs
前端开发
cd forntend
# 安装依赖
npm install
# 或使用国内镜像
npm install --registry=https://registry.npmmirror.com
# 启动开发服务器
npm run dev
前端服务将运行在 http://localhost:5173
📖 文档
🔑 默认账号
首次部署后,系统会自动创建管理员账号:
- 用户名:
admin(可在 .env 中配置) - 密码:
Admin@123456(可在 .env 中配置)
⚠️ 重要提示:请在首次登录后立即修改默认密码!
🛠️ 部署脚本
# 查看帮助
./deploy.sh help
# 初始化部署
./deploy.sh init
# 启动/停止/重启
./deploy.sh start|stop|restart
# 查看状态和日志
./deploy.sh status
./deploy.sh logs [服务名]
# 升级部署
./deploy.sh upgrade
# 数据库备份/恢复
./deploy.sh backup
./deploy.sh restore <backup_file>
📁 项目结构
NEX Docus/
├── backend/ # 后端服务
│ ├── app/
│ │ ├── api/ # API 路由
│ │ ├── core/ # 核心配置
│ │ ├── models/ # 数据模型
│ │ ├── schemas/ # Pydantic Schemas
│ │ └── services/ # 业务逻辑
│ ├── scripts/ # 脚本文件
│ ├── Dockerfile # 后端镜像
│ └── requirements.txt # Python 依赖
├── forntend/ # 前端应用
│ ├── src/
│ │ ├── api/ # API 请求
│ │ ├── components/ # 组件
│ │ ├── pages/ # 页面
│ │ ├── stores/ # 状态管理
│ │ └── utils/ # 工具函数
│ ├── Dockerfile # 前端镜像
│ └── package.json # npm 依赖
├── docker-compose.yml # Docker 编排
├── deploy.sh # 部署脚本
├── .env.example # 环境变量示例
└── README.md # 项目文档
🤝 贡献
欢迎提交 Issue 和 Pull Request!
📄 开源协议
本项目采用 MIT 协议
🙏 致谢
感谢以下开源项目:
Made with ❤️ by NEX Docus Team