pedrohpsantos/EdTech
GitHub: pedrohpsantos/EdTech
面向高校实验室的学术管理与云存储平台,集中化管理科学出版物、研究报告和数据集,支持身份验证、文档上传与审计追踪。
Stars: 2 | Forks: 0
# EdTech — 学术仓库
[](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-docs.yml)
[](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-backend.yml)
[](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-frontend.yml)


用于集中化、管理和审计科学出版物、研究报告和 datasets 的学术平台 —— 由 **AILAB Makers** 实验室 (UnB FCTE) 开发。
## 📌 仓库当前状态
该项目目前正处于 **完成 MVP (Sprint 6)** 的最后阶段。
- **✅ 已完成:** 文档、技术架构、完整的身份验证、向 Supabase Storage 上传文档以及整合好的 API 合约。
- **🚧 开发中:** 项目管理界面、导师面板、审计/结构化日志流程以及 E2E 自动化。
如需了解当前的优先事项以及如何协助完善文档,请阅读我们的[贡献指南](CONTRIBUTING.md)。
## 🚀 快速开始(本地文档)
```
# Clone 仓库
git clone https://github.com/pedrohpsantos/EdTech.git
cd EdTech
# 使用 uv 安装依赖
uv sync
# 在本地提供文档服务
uv run mkdocs serve
```
在浏览器中访问 `http://127.0.0.1:8000`。
## 使用 Docker Compose 的本地环境
该开发环境将启动 PostgreSQL 15 并在 `8080` 端口运行 backend Spring Boot。
```
# 1. 复制示例文件
cp infra/.env.example infra/.env
# 2. 填写 POSTGRES_PASSWORD、JWT_SECRET 并在 infra/.env 中设置您的 STORAGE_PROVIDER(s3 或 gcs)以及云密钥
# 3. 启动数据库和 backend
docker compose --env-file infra/.env -f infra/docker-compose.yml up --build
# 4. 在另一个终端中,查看 backend 的日志
docker compose --env-file infra/.env -f infra/docker-compose.yml logs -f backend
```
测试研究员注册:
```
curl -i -X POST http://localhost:8080/api/auth/register \
-H "Content-Type: application/json" \
-d '{
"name": "Ana Pesquisadora",
"email": "ana.pesquisadora@unb.br",
"password": "
"
}'
```
停止 containers:
```
docker compose --env-file infra/.env -f infra/docker-compose.yml down
```
如需同时删除本地的 PostgreSQL volume:
```
docker compose --env-file infra/.env -f infra/docker-compose.yml down -v
```
任何真实的密钥都不应保存在已版本化的文件中。`infra/.env` 文件被排除在 Git 之外,且应仅包含本地开发的值。
如果您的机器上 `5432` 端口已被占用,请在 `infra/.env` 中修改 `POSTGRES_PORT`。
backend 将继续通过 Compose 的内部网络连接到 `db:5432` 上的 PostgreSQL。
## 技术栈
| 层级 | 技术 |
| :--- | :--- |
| **Backend** | Java 21 · Spring Boot 4.1 · Spring Security · JWT · Flyway |
| **Frontend** | React 19 · Vite 8 · React Router · Axios · Bootstrap 5 |
| **Cloud / Infra** | Supabase S3 Storage · Cloud SQL (PostgreSQL) · Docker Compose |
| **Docs & CI** | MkDocs Material · GitHub Actions · uv · JaCoCo |
## 团队
| 姓名 | 角色 | GitHub |
| :--- | :--- | :--- |
| Pedro Henrique P. Santos | Tech Lead | [@pedrohpsantos](https://github.com/pedrohpsantos) |
| Alana Cristyna F. Dias | Full Stack | [@alanafeitosa-ui](https://github.com/alanafeitosa-ui) |
| Arthur Carvalho Leite | Full Stack | [@arthurlleite](https://github.com/arthurlleite) |
| Luis Gustavo F. Nunes | Full Stack | [@LuisGFNunes](https://github.com/LuisGFNunes) |
| Mariana S. F. Andrade | Full Stack | [@mariana-farias12](https://github.com/mariana-farias12) |
| Mateus Alves Araújo | Full Stack | [@mateusaraujo2006](https://github.com/mateusaraujo2006) |
## 版本历史
| 版本 | 日期 | 描述 | 作者 |
| :---: | :---: | :--- | :--- |
| `0.1.0` | 10/06/2026 | 技术文档与治理的基础建立。 | Pedro Henrique P. Santos |
| `0.2.0` | 13/06/2026 | 文档架构重组及开发 (DevEx) 指南。 | Pedro Henrique P. Santos |
## 许可证
这是一款为人工智能实验室 (AILAB) 教育目的而开发的学术项目。
源代码基于 [MIT License](LICENSE) 发布。
*请参阅 [更新日志](CHANGELOG.md) 获取完整的版本历史,并查看我们的[安全政策](SECURITY.md) 了解漏洞报告流程。*标签:Docker, MkDocs, Python, Supabase, 云存储, 域名枚举, 学术管理, 安全防御评估, 教育科技, 无后门, 测试用例, 版权保护