Modern template for Django that covers Admin Section
, all authentication pages (registration included) crafted on top of Black Dashboard, an open-source Bootstrap 5
design from Creative-Tim.
Actively supported by AppSeed via
Discord
.
Links & Resources
- Django Black Dashboard -
Product
that uses the libraryFeatures
: Fully-configured,CI/CD
via Render
- UI Kit: Black Dashboard
free version
by Creative-Tim - Sections Covered:
Admin Section
, reserved forsuperusers
All pages
managed byDjango.contrib.AUTH
Registration
pageMisc pages
: colors, icons, typography, blank-page
- Modern Bootstrap Design
Responsive Interface
Minimal Template
overridingEasy integration
Install the package via
PIP
$ pip install django-admin-black
// OR
$ pip install git+https://github.com/app-generator/django-admin-black.git
Add
admin_black
application to theINSTALLED_APPS
setting of your Django projectsettings.py
file (note it should be beforedjango.contrib.admin
):
INSTALLED_APPS = (
...
'admin_black.apps.AdminBlackConfig',
'django.contrib.admin',
)
Add
admin_black
urls in your Django Projecturls.py
file.
from django.urls import path, include
urlpatterns = [
...
path('', include('admin_black.urls')),
]
Collect static if you are in
production environment
:
$ python manage.py collectstatic
Start the app
$ # Set up the database
$ python manage.py makemigrations
$ python manage.py migrate
$
$ # Create the superuser
$ python manage.py createsuperuser
$
$ # Start the application (development mode)
$ python manage.py runserver # default port 8000
Access the admin
section in the browser: http://127.0.0.1:8000/
When a template file is loaded in the controller, Django
scans all template directories starting from the ones defined by the user, and returns the first match or an error in case the template is not found.
The theme used to style this starter provides the following files:
# This exists in ENV: LIB/admin_black
< UI_LIBRARY_ROOT >
|
|-- templates/ # Root Templates Folder
| |
| |-- accounts/
| | |-- auth-signin.html # Sign IN Page
| | |-- auth-signup.html # Sign UP Page
| |
| |-- includes/
| | |-- footer.html # Footer component
| | |-- sidebar.html # Sidebar component
| | |-- navigation.html # Navigation Bar
| | |-- scripts.html # Scripts Component
| |
| |-- layouts/
| | |-- base.html # Masterpage
| |
| |-- pages/
| |-- dashboard.html # Dashboard page
| |-- user.html # Settings Page
| |-- *.html # All other pages
|
|-- ************************************************************************
When the project requires customization, we need to copy the original file that needs an update (from the virtual environment) and place it in the template folder using the same path.
For instance, if we want to customize the dashboard.html
these are the steps:
Step 1
: create thetemplates
DIRECTORY inside your appStep 2
: configure the project to use this new template directory- Edit
settings.py
TEMPLATES section
- Edit
Step 3
: copy thedashboard.html
from the original location (inside your ENV) and save it to theYOUR_APP/templates
DIR- Source PATH:
<YOUR_ENV>/LIB/admin_black/pages/dashboard.html
- Destination PATH:
YOUR_APP/templates/pages/dashboard.html
- Source PATH:
- Edit the footer (Destination PATH)
At this point, the default version of the dashboard.html
shipped in the library is ignored by Django.
In a similar way, all other files and components can be customized easily.
The SCSS/CSS files used to style the Ui are saved in the admin_black/static/assets
directory.
In order to update the Ui colors (primary, secondary) this procedure needs to be followed.
$ yarn # install modules
$ # # edit variables
$ vi static/assets/scss/black-dashboard/custom/_variables.scss
$ gulp # SCSS to CSS translation
The _variables.scss
content defines the primary
and secondary
colors:
$default: #344675 !default; // EDIT for customization
$primary: #e14eca !default; // EDIT for customization
$secondary: #f4f5f7 !default; // EDIT for customization
$success: #00f2c3 !default; // EDIT for customization
$info: #1d8cf8 !default; // EDIT for customization
$warning: #ff8d72 !default; // EDIT for customization
$danger: #fd5d93 !default; // EDIT for customization
$black: #222a42 !default; // EDIT for customization
This design is a pixel-perfect Bootstrap Dashboard with a fresh, new design. Black is a completly new product built on our newest re-built from scratch framework structure that is meant to make our products more intuitive, more adaptive and, needless to say, so much easier to customize.
Features:
Up-to-date Dependencies
Design
: Django Theme Black -PRO Version
Sections
covered by the design:- Admin section (reserved for superusers)
- Authentication:
Django.contrib.AUTH
, Registration - All Pages available in for ordinary users
Docker
,Deployment
:CI/CD
flow viaRender
Django Admin Black - Modern Admin Interface provided by AppSeed