Forge - a modern, opinionated, and approachable way to build and deploy your Django app

Hey everybody! I’m new to the forum but a long-time Django user.

I recently took all the stuff I copy/paste from project to project and put it into a clone-able git repo that you can use to start a project, and also merge updates from over time (a key point, I think). Somewhat like Bullet Train for Rails, but for Django.

It’s still evolving but right now this is a rough list of things it helps with (sorry, it made me remove all the links! All the docs are on the link above):

  • Heroku for hosting
  • Stripe for billing (checkout, portal, webhook views)
  • Poetry for dependencies
  • Tailwind for CSS
  • custom base template
  • custom/default form templates
  • pytest for testing
  • custom user model (as suggested by Django)
  • “Teams” app/models
  • a few helpful abstract models
  • signup form/url/view and templates
  • login, password change, and password reset templates
  • log in with email address (not just username)
  • django-impersonate to log in as users
  • render/send emails using Django templates
  • Sentry for error monitoring
  • defaults for a bunch of production settings that involve “SECURE”
  • run Django system checks before deploy
  • automated dependency updates
  • black and isort for formatting (and a git pre-commit hook to check formatting and run tests)

I know there are a handful of other “starter templates” and stuff for Django, but I wanted something (for myself, surprise) that covers everything from dependencies to billing, and focuses on a specific combination of tools (ex. Heroku. Not Heroku or AWS or Linode or DigitalOcean, which all function differently and change a lot of other decisions.).

Yes, it is a paid/private repo. I’m open to giving a discount code here if anybody is interested, but charging for software is how I make a living so that’s where I started with this too!

This is brand new, but if there is interest I also think the community aspect could be really helpful — GitHub Issues and Discussions with people that are building things in a very similar way to you (same stack, third-party apps in common, similar design philosophy)…

I’m not any good on video, but I did make one that goes over starting a new project and hits a couple of the things mentioned above:

Let me know what you think. Thanks!