技术栈
依赖清单:源码仓库 requirements.txt。约束为范围版本,不是钉死补丁号。
| 层级 | 技术 | 说明 |
|---|---|---|
| 语言 | Python 3.11+ | README 要求;GitHub Actions CI 使用 3.12 |
| Web | Django >=4.2,<7 | settings.py 由 Django 6.0.2 startproject 生成 |
| 认证 | django-allauth | 仅 Google 社交登录 |
| 数据库 | PostgreSQL | 本地自建;生产 Neon |
| 驱动 | psycopg2-binary | — |
| WSGI | gunicorn | 生产进程 |
| 静态 | WhiteNoise | 生产 CompressedManifestStaticFilesStorage |
| 样式 | django-tailwind + 预编译 CSS | 产物提交在 theme/static/css/dist/styles.css |
| 邮件 | Resend SMTP | django.core.mail |
| 对象存储 | django-storages + boto3 | 可选 R2 |
| 加密 | cryptography | 激活码 Fernet |
| pdfplumber | 教室回执解析 | |
| 配置 | python-dotenv | 加载项目根 .env |
明确不存在:React/Vue 前端工程、Docker Compose、DRF 公开 REST、独立 package.json(改 Tailwind 源文件时需自行了解 django-tailwind 编译流程)。
Python 版本口径
| 来源 | 版本 |
|---|---|
| README | 3.11+ |
.github/workflows/ci.yml | 3.12 |
| 某台开发机 venv | 可能更新(例如 3.14) |
提交与 CI 对齐 3.12 最稳妥。不要把未在 CI 验证的语法写进主干。
上游文档
见 系统首页 的「上游与参考」表。