Show HN: Django Keel – 10 Years of Django Best Practices in One Template (github.com)

25 points by sanyam-khurana ↗ HN
After a decade of shipping Django to production, I got tired of solving the same setup problems on every new project.

Environment-first settings. Sensible auth defaults. Structured logging. CI from day zero. Pre-commit hooks. Docker. Security hardening. Every project meant two days of boilerplate before writing business logic.

So I built Django Keel: a production-ready Django starter that eliminates the yak-shaving. GitHub: https://github.com/CuriousLearner/django-keel

*What you get*:

- 12-factor config with environment-based secrets - Production-hardened security defaults - Pre-wired linting, formatting, testing, pre-commit hooks - CI workflow ready to go - Clear project structure that scales - Documentation with real trade-offs explained

*Background*:

I maintained a popular cookiecutter template for years. Django Keel is what that should've been from the start—battle-tested patterns without the accumulated cruft.

*Who it's for*:

Teams and solo builders shipping Django to production who want a strong baseline without tech debt. Feedback welcome on what works, what doesn't, and what's missing. Issues and PRs appreciated.

12 comments

[ 4.6 ms ] story [ 36.8 ms ] thread
This looks great - I have one concern with tools like this - what is the update flow when the template is updated?

This is a thing I've been struggling with - what is the best way of delivering such templates. Is a template generator such as this? Would it be best to copy a baseline repo with all options set? Should we fork that base repo and rebase when the baseline updates?

As someone who up to now has mainly watched Django from the sidelines, as it were, this looks great.

What's are your plans for supporting Django v6? (I appreciate it's just gone alpha now, and planned prod release is not for two months.)

Likewise for Python 3.14.

15 years of Django for me personally. I use it now in my SaaS as a data backend with Strawberry GraphQL and lean heavily in on the admin. My frontend is React Router 7 framework mode. I’m going to be checking into Keel for my new toy projects. I wish it would use ty but easy enough to add myself.
Looks great, looking forward to trying it.

Interesting that you included Temporal for background task processing — did you ever use it in production in a Django project instead of Celery?

encountered this post in reddit maybe an hour ago. the comment sections are very different. i'm gonna stick with HN for sure.

good project though. using copier instead of cookiecutter is a good choice.

> pytest - Comprehensive test suite (80% coverage minimum)

Why would this ever be less than 100%?

Nice. Batteries included for major frameworks is always great.
Yes, I maintained a cookie-cutter template for over a decade, and it was a pain for me to get it updated. I wanted to get something newer, like a copier, which eliminates the pain of updating, while I can focus on building things.

I have also added temporal (though still testing it) since it's getting a lot popular these days.

This looks amazing, but... I have one worry. Granted I have not yet kick started a project with keel, so I might be wrong. I'm speaking from experience of building my own boilerplate.

Giving so many options, makes the boilerplate very fragile. I recently starter removing optional bits from my boilerplate, cause it became much harder to manage and made the generation very fragile.

Would love to hear your thoughts on this.