My FeedDiscussionsHashnode Enterprise
New
Sign in
Log inSign up
Learn more about Hashnode Headless CMSHashnode Headless CMS
Collaborate seamlessly with Hashnode Headless CMS for Enterprise.
Upgrade ✨Learn more

Getting started with a free Django admin dashboard template

Zoltán Szőgyényi's photo
Zoltán Szőgyényi
·Mar 21, 2021·

6 min read

Django Volt is an open-source seed project crafted with a database, session-based authentication, basic helpers, and deployment scripts on top of Volt Bootstrap 5 design.

The codebase has a simple, modular structure that follows the industry best practices and patterns used in modern Python-based applications. For newcomers, Django is the most popular Python-based web framework mostly for the "batteries-included" concept and the built-in security pattern provided by experts.

Django Codebase

The product can be used to start a new project by coding only the specific features on top or integrate the design into a legacy Python-based product.

The design is already production-ready with pages and components compatible with the Django template engine. Being a simple starter, any developer with basic Python knowledge should be able to compile and use the app by typing only a few lines in the terminal.

You can learn more about getting started with the Django codebase by reading our documentation.

Powered by Bootstrap 5

Volt is built using the latest version of Bootstrap 5 and because jQuery is no longer required as a dependency, Volt has been built using only Vanilla JS.

There are over 100 unique Bootstrap 5 UI elements that are included in the template, such as buttons, alerts, modals, and many more. Not only that, but there are also 10 unique dashboard pages that will make setting up a quick administration or web app UI easier.

You can explore all of the examples of UI elements by browsing the documentation.

Compile the product

To compile the product and use it locally, Python3 should be installed and accessible via the terminal. The source code can be downloaded from the official repository or downloaded in ZIP format from the product page.

Download the sources and unzip the archive

cd django-dashboard-volt

Create a virtual environment

virtualenv env
$ source env/bin/activate

Install modules

pip3 install -r requirements.txt

Create the tables by running a Django migration

python manage.py makemigrations
$ python manage.py migrate

Start the application

python manage.py runserver

If all goes well, we can access Django Volt in browser 127.0.0.1:8000.

Note: To use the app, please access the registration page and create a new user. After authentication, the app will unlock the private pages.

Django Volt - Open-source seed project provided by Themesberg and AppSeed.

Codebase structure

The project is coded using a simple and intuitive structure presented bellow:

< PROJECT ROOT >
   |
   |-- core/                        # Implements app logic and serve the static assets
   |    |-- settings.py         # Django app bootstrapper
   |    |-- static/
   |    |-- templates/          # Templates used to render pages
   |         |-- includes/        # HTML chunks and components
   |         |-- layouts/         # Master pages
   |         |-- accounts/      # Authentication pages
   |         |
   |      index.html             # The default page
   |       *.html                    # All other HTML pages
   |
   |-- authentication/       # Handles auth routes (login and register)
   |-- app/                         # A simple app that serve HTML files
   |
   |-- requirements.txt     # Development modules - SQLite storage
   |-- .env                          # Inject Configuration via Environment
   |-- manage.py              # Start the app - Django default start script
   |
   |-- ************************************************************************

The bootstrap flow

  • Django bootstrapper manage.py uses core/settings.py as the main configuration file
  • core/settings.py loads the app magic from .env file
  • Redirect the guest users to Login page
  • Unlock the pages served by app node for authenticated users

Deployment

The app is provided with a basic configuration to be executed in Docker, a popular virtualization software. To start the project inside a Docker container, please type following commands:

1# - UNZIP the archive and change the curent directory

cd django-dashboard-volt

2# - Download the required packages

sudo docker-compose pull

3# - Build the Docker packages

sudo docker-compose build

4# - Start the dokerized application

sudo docker-compose up

By visiting localhost:5005 in the browser we should see the app running.

This template was created in partnership with the AppSeed App Generator.