前言
(本文写于 2025-09-11 )
不得不说这个 DjangoStarter 真是时间黑洞啊😡
我最近又想起来这个项目,想把之前未完成的想法给完善一下
结果打开 GitHub 看到一堆 issues
又修了一些 bug 什么的,处理了网友的问题,还有把我之前的一些设想完善一下
结果就这么久的时间过去了!!
真的是时!间!黑!洞!💢
这让我不得不反思,投入那么多时间到这个项目值得吗,有意义吗??
瘦身
反思归反思,都投入那么多沉没成本了
还是得继续做下去
现在问题是之前加了太多无关的东西,导致维护成本提升
所以这次我决定做一些减法
毕竟 less is more 😄
实践下来,可以去除的项目包括:
- django-compressor
- Prometheus
- Grafana
- 过时的前端依赖
- unfold(待定)
所以这次除了修复bug、增加一些功能之外就是做这个瘦身
把这些可有可无的东西都去掉,以减少维护成本
主要考虑就是这些工具在小团队/独立开发的场景下,价值不大,但维护开销很高,所以决定砍掉。
具体的更新内容,可以看文章末尾的发布说明,也可以看 GitHub Releases: https://github.com/Deali-Axy/DjangoStarter/releases/tag/v3.2.1
为什么?
还是得介绍一下具体的考量,不然有同学可能会想:
- 为什么
django-compressor之类的东西成了负担? - 为什么 Prometheus/Grafana 这样的“好东西”要移除?
不理解为啥要把这些看起来挺有用的组件移除。
为什么要瘦身? 简单来说:小项目不能把企业级运维当成标配。很多看起来“很酷”的工具(比如 Prometheus / Grafana、django-compressor)在大型项目里非常值钱——但在一个独立开发者维护的小仓库里,它们带来的维护成本往往超过收益。
- 监控与可视化需要额外的部署、报警与存储策略,单人维护会成为负担;
django-compressor等工具在静态资源处理上引入了额外复杂度(build 步骤、node 版本、缓存问题),对快速迭代不友好;很多线上错误都与这个有关,而且有些同学可能习惯把 DjangoStarter 用于纯接口开发,那 django-compressor 就更没有必要了。- 过多的依赖会增加安全补丁的负担、CI 构建时间和本地复现成本。 因此我的取舍逻辑是:“有没有立刻产生价值?会不会拖慢开发/部署/排错?” 若答案是否定,果断裁掉——把时间和精力用在对用户更直观、更稳定的功能上。
思考
接下来是一些胡言乱语
以独立开发者的角度
- AI 时代的全栈框架:独立开发者的机会与挑战 — 讲我为什么觉得“一体性”比“多样性”更重要,以及 AI 如何改变开发流程。
- Django 过时了吗?从 ASGI 到 AI 时代的思考 — 我讨论 Django 的短板和长期价值,为什么不必盲目跟风。
- 为什么说 Edge/Serverless 是最适合独立开发者的开发方式? — 从成本、部署和全球可用性角度,讲讲我把哪些服务搬到 edge 的理由。
(点进去会有更详细的实操建议和我亲测的坑点 —— 建议先看「AI 时代的全栈框架」作为入门。)
扩展
再记录一下想尝试的一些东西吧
以下两篇文章还没写好,就先占个位吧~
- Next.js 全栈开发:我的前端技术栈全景图(2025版)
- 为什么我想把 Rust 用到 Web 后端开发?
其他
还有就是 Rust
还好我今年的年度计划没有把 Rust 列入学习计划中
不过我确实对这个语言非常感兴趣,之前虽然用来写过几个小 demo,但没有系统学习
接下来可能会把 Rust 用于 Web 后端开发。
DjangoStarter v3.2.1 发布说明
太长不看版的说人话总结:
- 🧹 去掉了复杂依赖,项目更轻量
- 🕒 模型历史追踪,数据回溯更方便
- 📘 文档全面升级,AI 原生场景更清晰
下面是详细内容
✨ Features
- 🕒 模型历史追踪:引入
django-simple-history,为所有模型添加历史记录功能,支持数据变更审计与回溯。 - 📊 Admin 增强:为
Movie和Actor模型启用SimpleHistoryAdmin支持,并新增demo_seed命令用于生成演示数据。
🐞 Bug Fixes
- ⚙️ 修复静态文件路径配置,确保在不同环境下的
compressor配置正确生效。
♻️ Refactor
- 👤 用户管理:重构
UserProfile管理逻辑,将用户资料创建从信号迁移到内联管理,并添加防重复的InlineFormSet。 - 🗑️ 依赖清理:移除
django-compressor及其相关配置;删除 Prometheus、Grafana、备份等不再使用的监控与依赖。 - 🏗️ 容器与部署:简化 Nginx 配置、优化 Dockerfile 构建步骤,移除匿名卷并更新 Node.js 至 v22,同时精简无用依赖与服务。
- 🧹 代码清理:移除未使用的扩展主页和监控相关模块,迁移部分配置逻辑以提升可维护性。
📦 Dependencies
- ⬆️ 升级 django-unfold 至
0.65.0 - ⬆️ 更新 @fortawesome/fontawesome-free 至
v6.7.2 - 🐍 升级 Python 至
3.12,Node.js 至22 - 🔒 更新多个依赖(如
django、django-ninja、orjson、pydantic),修复安全漏洞并提升兼容性 - ➖ 移除
async-timeout、django-compressor、prometheus-client等不再需要的依赖
📄 Docs
- 📘 重写 README,强调 Django + Ninja 的 AI 原生全栈框架定位,新增典型应用场景与扩展点说明。
- 📝 新增 开发规范与AI IDE规则,覆盖技术栈、架构设计、代码规范与测试要求。
- 📚 补充多篇 AI 任务文档,包括日志重构、缓存配置、环境变量、CLI 工具与 URL 前缀指南。
- 🖼️ 更新文档截图与项目展示,完善使用说明与快速上手内容。
🔧 Others
- 🛠️ 合并多处分支冲突,统一配置文件与模板结构。
- 🧩 调整部分 UI 与样式细节,优化暗黑模式与交互体验。
小结
如果你觉得这些思路有用,或有想看的拆分专题,欢迎:
- ⭐ 在 GitHub 给个 star / issue(告诉我你最想要的功能或你在本地遇到的问题);
- 💬 在文章下方留言或在公众号私信我(想看哪篇拆分文章优先出)。
我会把大家的反馈优先纳入后续的拆分文章和实战指南里——项目轻了,但路还长,咱们一起把它越做越顺手。
程序设计实验室
微信公众号