72 lines
1.6 KiB
Markdown
72 lines
1.6 KiB
Markdown
|
|
# K12Study
|
|||
|
|
|
|||
|
|
K12Study 是首版 K12 智能学习系统项目骨架,当前聚焦“可运行基础框架”,用于承接多区域、多租户、多角色的后续业务建设。
|
|||
|
|
|
|||
|
|
## 目录结构
|
|||
|
|
|
|||
|
|
- `backend`: Java 多模块后端、网关、本地聚合启动、Python AI 占位服务
|
|||
|
|
- `frontend`: 单一 React 管理端项目,保留 `api / types / utils / components / dynamic route`
|
|||
|
|
- `app`: 微信小程序项目骨架,独立于 Web 管理端
|
|||
|
|
- `init/pg`: PostgreSQL 初始化脚本,按模块拆分维护
|
|||
|
|
- `docs`: 产品、架构和实施计划文档
|
|||
|
|
|
|||
|
|
## 运行模式
|
|||
|
|
|
|||
|
|
- 分布式模式:独立启动 `gateway`、`auth`、`upms`、`python-ai`
|
|||
|
|
- 本地模式:通过 `backend/boot-dev` 单进程暴露 `/api/auth/**`、`/api/upms/**`
|
|||
|
|
|
|||
|
|
## VS Code Docker Dev
|
|||
|
|
|
|||
|
|
提供两套 dev container:
|
|||
|
|
|
|||
|
|
- `.devcontainer/external/devcontainer.json`
|
|||
|
|
连接外部 PostgreSQL / Redis
|
|||
|
|
- `.devcontainer/internal/devcontainer.json`
|
|||
|
|
在开发环境内部创建 PostgreSQL / Redis
|
|||
|
|
|
|||
|
|
代码与本地目录同步方式是 Docker bind mount,不是额外复制:
|
|||
|
|
|
|||
|
|
- 宿主机项目目录直接挂载到容器工作目录
|
|||
|
|
- 本地改代码,容器内实时可见
|
|||
|
|
- 容器里安装的依赖和运行环境与本地源码共用同一份工程目录
|
|||
|
|
|
|||
|
|
## 快速开始
|
|||
|
|
|
|||
|
|
### Backend
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd backend
|
|||
|
|
mvn -q -DskipTests package
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Frontend
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd frontend
|
|||
|
|
pnpm install
|
|||
|
|
pnpm dev
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### App
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd app
|
|||
|
|
npm run dev
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
然后使用微信开发者工具打开 `app/project.config.json`。
|
|||
|
|
|
|||
|
|
### Python AI
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd backend/python-ai
|
|||
|
|
pip install -r requirements.txt
|
|||
|
|
uvicorn app.main:app --reload --port 9000
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Infrastructure
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
docker compose up -d postgres redis
|
|||
|
|
```
|