https://github.com/simatwa/django-fastapi-boilerplate
Repository for quickly jumpstarting web projects that uses both Django & FastAPI frameworks for backend.
https://github.com/simatwa/django-fastapi-boilerplate
Last synced: 8 months ago
JSON representation
Repository for quickly jumpstarting web projects that uses both Django & FastAPI frameworks for backend.
- Host: GitHub
- URL: https://github.com/simatwa/django-fastapi-boilerplate
- Owner: Simatwa
- Created: 2025-05-15T07:42:07.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-29T09:29:08.000Z (12 months ago)
- Last Synced: 2025-07-11T20:16:15.154Z (11 months ago)
- Language: Python
- Size: 3.74 MB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
django-fastapi-boilerplate
Repository for quickly jumpstarting web projects that uses both Django & FastAPI frameworks for backend.
| Page | Screenshot |
|------------|----------------|
| Landing |  |
| Admin |  |
| OpenAPI Docs |  |
# Features
- Common django apps ie.
- [Users](backend/users) - User accounts
- [Management](backend/management) - Message management, crucial app info etc.
- [Finance](backend/finance) - Money related stuff
- [External](backend/external) - App information etc
- FastAPI endpoints
- [Business](backend/api/v1/business) - Provides app information
- [Account](backend/api/v1/account) - User account creation & management
- [Core](backend/api/v1/core) - User level actions - *templated*
- Admin dashboard using [Django-Jazzmin](https://github.com/farridav/django-jazzmin)
Backend Directory Structure
```
.
├── app.py
├── backend
│ ├── api
│ │ ├── cli.py
│ │ ├── common.py
│ │ ├── dependencies
│ │ │ ├── __init__.py
│ │ │ └── security
│ │ │ ├── exceptions.py
│ │ │ ├── __init__.py
│ │ │ ├── turnstile.py
│ │ │ └── _types.py
│ │ ├── __init__.py
│ │ ├── __main__.py
│ │ ├── middleware.py
│ │ ├── README.md
│ │ ├── tests
│ │ │ ├── __init__.py
│ │ │ ├── utils.py
│ │ │ └── v1
│ │ │ ├── __init__.py
│ │ │ ├── test_accounts.py
│ │ │ ├── test_business.py
│ │ │ └── test_core.py
│ │ ├── v1
│ │ │ ├── account
│ │ │ │ ├── __init__.py
│ │ │ │ ├── models.py
│ │ │ │ ├── routes.py
│ │ │ │ └── utils.py
│ │ │ ├── business
│ │ │ │ ├── __init__.py
│ │ │ │ ├── models.py
│ │ │ │ └── routes.py
│ │ │ ├── core
│ │ │ │ ├── __init__.py
│ │ │ │ ├── models.py
│ │ │ │ └── routes.py
│ │ │ ├── __init__.py
│ │ │ ├── models.py
│ │ │ ├── routes.py
│ │ │ └── utils.py
│ │ └── VERSION
│ ├── db.sqlite3
│ ├── external
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── _enums.py
│ │ ├── __init__.py
│ │ ├── models.py
│ │ ├── tests.py
│ │ └── views.py
│ ├── files
│ │ └── media
│ │ ├── default
│ │ │ ├── logo.png
│ │ │ └── user.png
│ │ └── gallery
│ │ └── screen_.jpg
│ ├── finance
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── _enums.py
│ │ ├── forms.py
│ │ ├── __init__.py
│ │ ├── models.py
│ │ ├── templatetags
│ │ │ └── my_filters.py
│ │ ├── tests.py
│ │ └── views.py
│ ├── Makefile
│ ├── management
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── _enums.py
│ │ ├── forms.py
│ │ ├── __init__.py
│ │ ├── models.py
│ │ ├── tests.py
│ │ └── views.py
│ ├── manage.py
│ ├── project
│ │ ├── asgi.py
│ │ ├── __init__.py
│ │ ├── settings
│ │ │ ├── base.py
│ │ │ ├── config.py
│ │ │ ├── dev.py
│ │ │ ├── __init__.py
│ │ │ └── prod.py
│ │ ├── urls.py
│ │ ├── utils
│ │ │ ├── admin.py
│ │ │ ├── common.py
│ │ │ ├── __init__.py
│ │ │ └── models.py
│ │ └── wsgi.py
│ ├── requirements.txt
│ ├── templates
│ │ ├── api
│ │ │ └── v1
│ │ │ └── email
│ │ │ ├── message_received_confirmation.html
│ │ │ └── password_reset_token.html
│ │ ├── success.html
│ │ └── user_creation.html
│ ├── users
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── _enums.py
│ │ ├── forms.py
│ │ ├── __init__.py
│ │ ├── models.py
│ │ ├── tests.py
│ │ ├── urls.py
│ │ └── views.py
│ └── wsgi.py
├── frontend
│ ├── css
│ │ └── main.css
│ ├── img
│ │ └── logo.png
│ ├── index.html
│ └── js
│ └── main.js
├── pyproject.toml
├── README.md
└── requirements.txt
30 directories, 98 files
```
> [!IMPORTANT]
> The frontend directory declared in [.env](env.example) must have `index.html` file.