Skip to content

Boilerplate for starting Django DRF / API projects

Notifications You must be signed in to change notification settings

inputlogic/django-api-starter

Repository files navigation

Django API Starter

A sentence or two about the project. What is it? Who is the client?. This makes it easier for new members on the project to understand what its supposed to do. For example, this starter is meant as a boilerplate for all new projects and includes common tooling such as user authentication, email notifications and local development tooling.

Requirements

Versions

  • Python 3.11.x
  • Django 4.1.x
  • Postgres 15.x

Local Development

To run the project via Docker, do:

$ make run

This will handle building the initial image and starting the project. If you change any system level files like requirements.txt make sure you re-build the image with:

$ make build

If you want to run commands on the container such as ./manage.py <command>, do:

$ make shell

This will open a bash shell on the web container.

Integrations

This section is meant to outline integrations and their purpose.

  • Postmark for sending emails.
  • Firebase for sending push notifications to mobile.
  • Sentry for tracking Django errors.
  • Stripe for handling payments.

Additional

This section is meant for project-specific logic. Include a Loom if more detail is required.

Stripe

We use Stripe's subscription model to bill clients on a monthly or annual basis. Each plan includes a 14 day free trial.

  • Loom walkthrough
  • All payment logic is stored on Stripe.
  • Our database only stores client and subscription ids, nothing else.
  • All payment logic is handled via webhooks.

About

Boilerplate for starting Django DRF / API projects

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages