Django Admin Black - Free template for Django Admin Interface | AppSeed
MIT License
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
Product
that uses the library
Features
: Fully-configured, CI/CD
via Renderfree version
by Creative-TimAdmin Section
, reserved for superusers
All pages
managed by Django.contrib.AUTH
Registration
pageMisc pages
: colors, icons, typography, blank-pageDjango Black 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 the templates
DIRECTORY inside your appStep 2
: configure the project to use this new template directory
settings.py
TEMPLATES sectionStep 3
: copy the dashboard.html
from the original location (inside your ENV) and save it to the YOUR_APP/templates
DIR
<YOUR_ENV>/LIB/admin_black/pages/dashboard.html
YOUR_APP/templates/pages/dashboard.html
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:
Django.contrib.AUTH
, RegistrationDocker
, Deployment
:
CI/CD
flow via Render
Django Admin Black - Modern Admin Interface provided by AppSeed