面向独立开发者与小团队的 AI 原生全栈框架
用最少样板代码,快速把想法做成可上线的产品。
基于 Django 5 + Django-Ninja(类型安全 API)+ HTMX / Alpine / TailwindCSS / DaisyUI,内建认证、安全、中间件、代码生成、容器化与观测,把时间全部留给业务。
DjangoStarter v4 采用 三段式分发 架构,按需组合使用:
graph TB
subgraph Web["django-starter-web · 全栈模板"]
W1["模板渲染 + 前端构建链路"]
W2["HTMX / Alpine / TailwindCSS / DaisyUI"]
end
subgraph API["django-starter-api · API-only 模板"]
A1["纯接口,无前端依赖"]
A2["Django-Ninja / OpenAPI"]
end
subgraph Core["django-starter-core · 共享核心库"]
C1["模型基类 · 统一响应"]
C2["鉴权 · 验证码 · 配置中心"]
C3["代码生成 · 种子数据 · 监控"]
end
Web -->|"依赖"| Core
API -->|"依赖"| Core
style Web fill:#e0f2fe,stroke:#0284c7,color:#0c4a6e
style API fill:#fef3c7,stroke:#d97706,color:#78350f
style Core fill:#dcfce7,stroke:#16a34a,color:#14532d
| 仓库 | 说明 | Stars |
|---|---|---|
| django-starter-web | 全栈模板,开箱即用的完整 Web 应用脚手架 | ⭐ 258 |
| django-starter-api | API-only 模板,适合前后端分离 / 纯后端服务 | ⭐ 1 |
| django-starter-core | 共享核心库,Web 与 API 的共同依赖底座 | ⭐ 2 |
DjangoStarter 的旗舰模板,保留完整的全栈体验:
- Django Ninja — 类型安全 API,自动生成交互式 OpenAPI 文档
- TailwindCSS v4 + DaisyUI v5 — 现代 UI,支持 Light / Dark 多主题切换
- Alpine.js + HTMX — 轻量前端交互,SPA 级用户体验
- 代码自动生成 — 定义模型即可生成 Schema、RESTful API 与测试用例
- 种子数据 — 内置 seed 模块,自动填充开发测试用假数据
- 容器化 — 内置 Dockerfile + docker-compose,一键部署
- 增强安全 — Admin 登录验证码、IP 限制等
典型场景:个人 / 独立产品 MVP、企业内部工具、数据看板、AI Agent 后端与管理界面。
专注于纯 API(Headless)开发:
- 不含前端 — 无模板渲染与前端依赖,适合前后端分离架构
- Django-Ninja — 类型校验 + 自动 OpenAPI 文档(Swagger UI)
- 路由聚合 — 统一入口
/api/,按领域拆分 routers - 环境分层 —
DJANGO_ENV=development/testing/production,production 默认安全收紧 - 可观测性 — health / ready / metrics + request-id 日志关联
- Copier 模板 — 内置 Copier 配置,一键生成新 API 项目
Web 与 API 共同依赖的底座能力库:
基础层:
- 模型基类 — 软删除 + 创建 / 更新时间戳(
ModelExt) - 统一响应封装 — 面向 Django-Ninja 的响应生成
- 常用常量与工具函数
可选能力(contrib apps,按需启用):
- 鉴权 — JWT 生成 / 解析、Bearer 鉴权
- 验证码 — 验证码 API / 服务
- 配置中心 — 配置项管理与 API
- 监控 — Prometheus metrics + 中间件
- 代码生成 — 根据模型自动生成 CRUD / Schema / Tests
- 种子数据 — 自动生成开发用假数据
| 层 | 技术 |
|---|---|
| 后端框架 | Django 5 / Django 6 + Django-Ninja |
| API | 类型安全,OpenAPI 自动文档 |
| 前端 | HTMX + Alpine.js + TailwindCSS v4 + DaisyUI v5 |
| 数据库 | PostgreSQL / SQLite |
| 缓存 | Redis |
| 部署 | Docker + docker-compose |
| Python | >= 3.12(Core),3.14(API) |
# 全栈项目(推荐新手)
git clone https://github.com/djangostarter/web.git
cd web && docker compose up
# API-only 项目
copier copy https://github.com/djangostarter/api.git my-api
# 作为库依赖
pip install django-starter-core
```mermaid
graph TB
subgraph Web["django-starter-web · 全栈模板"]
W1["模板渲染 + 前端构建链路"]
W2["HTMX / Alpine / TailwindCSS / DaisyUI"]
end
subgraph API["django-starter-api · API-only 模板"]
A1["纯接口,无前端依赖"]
A2["Django-Ninja / OpenAPI"]
end
subgraph Core["django-starter-core · 共享核心库"]
C1["模型基类 · 统一响应"]
C2["鉴权 · 验证码 · 配置中心"]
C3["代码生成 · 种子数据 · 监控"]
end
Web -->|"依赖"| Core
API -->|"依赖"| Core
style Web fill:#e0f2fe,stroke:#0284c7,color:#0c4a6e
style API fill:#fef3c7,stroke:#d97706,color:#78350f
style Core fill:#dcfce7,stroke:#16a34a,color:#14532d