pedrohpsantos/EdTech

GitHub: pedrohpsantos/EdTech

面向高校实验室的学术管理与云存储平台,集中化管理科学出版物、研究报告和数据集,支持身份验证、文档上传与审计追踪。

Stars: 2 | Forks: 0

EdTech Banner
# EdTech — 学术仓库 [![Deploy MkDocs](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-docs.yml/badge.svg)](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-docs.yml) [![CI Backend](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-backend.yml/badge.svg)](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-backend.yml) [![CI Frontend](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-frontend.yml/badge.svg)](https://github.com/pedrohpsantos/EdTech/actions/workflows/ci-frontend.yml) ![Python](https://img.shields.io/badge/python-%3E%3D3.11-3776ab?logo=python&logoColor=white) ![MkDocs Material](https://img.shields.io/badge/docs-MkDocs%20Material-7c4dff?logo=materialformkdocs&logoColor=white) 用于集中化、管理和审计科学出版物、研究报告和 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, 云存储, 域名枚举, 学术管理, 安全防御评估, 教育科技, 无后门, 测试用例, 版权保护