A Django REST Framework template for building RESTful APIs
Find a file
2024-09-01 19:36:14 +08:00
backend Fix CSRF 2024-09-01 17:26:43 +08:00
documentation/erd Overhauled entire project config, added notifications, email templates, optimized stripe subscriptions, redis caching, and webdriver utilities 2024-05-10 23:15:29 +08:00
.dockerignore Update README.md and fix deployment step in .woodpecker.yml 2024-08-30 19:44:37 +08:00
.env.sample Fix unused admin credentials in .env file 2024-09-01 16:47:33 +08:00
.gitignore Move production server to granian from gunicorn 2024-06-04 20:19:13 +08:00
.prettierignore Overhauled entire project config, added notifications, email templates, optimized stripe subscriptions, redis caching, and webdriver utilities 2024-05-10 23:15:29 +08:00
.woodpecker.yml Clear .woodpecker.yml 2024-09-01 19:36:14 +08:00
docker-compose.demo.yml Fix bindmount on celery beat container causing missing file errors 2024-08-30 22:27:33 +08:00
docker-compose.dev.yml Updated README.md and dev.yml to match demo.yml 2024-08-30 23:15:28 +08:00
Dockerfile Fix issue with startup script being unable to read .env file 2024-09-01 18:01:51 +08:00
Pipfile Move production server to granian from gunicorn 2024-06-04 20:19:13 +08:00
Pipfile.lock Move production server to granian from gunicorn 2024-06-04 20:19:13 +08:00
README.md Updated README.md and dev.yml to match demo.yml 2024-08-30 23:15:28 +08:00
requirements.txt Move production server to granian from gunicorn 2024-06-04 20:19:13 +08:00
seed_data.json Overhauled entire project config, added notifications, email templates, optimized stripe subscriptions, redis caching, and webdriver utilities 2024-05-10 23:15:29 +08:00
start.sh Remove unnecessary .env parsing from startup script 2024-09-01 18:07:56 +08:00

DRF-Template

Build Status Demo Page Status

This is a Django template that I personally use for my projects. This covers the following

  • Emails (and templated email designs)
  • Celery (For asynchronous tasks)
  • Celery Beat (For scheduled tasks)
  • Caching (via Redis)
  • Performance profiling (via Django Silk)
  • Selenium (Optional, for webscraping with support for Chrome and Firefox drivers)
  • Stripe Subscriptions (Optional, with regular and pro-rated subscription support)
  • Notifications (via traditional RESTful endpoints)
  • A working Woodpecker CI/CD template for automated deployments

A live API demo can be found here

Development

  • Create a copy of the .env.sample file and name it as .env in the same directory
  • Populate .env with values
  • Run docker-compose -f docker-compose.dev.yml up

Be sure to follow through the steps shown in the stripe-listener container for initial setup with Stripe!

URLs