# django-adminlte **Repository Path**: zhang35/django-adminlte ## Basic Information - **Project Name**: django-adminlte - **Description**: django-adminlte开源前端框架 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 1 - **Created**: 2022-02-11 - **Last Updated**: 2023-08-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # [AdminLTE Django](https://appseed.us/admin-dashboards/django-dashboard-adminlte) Open-source **[Django Dashboard](https://appseed.us/admin-dashboards/django)** generated by AppSeed op top of an iconic design. For newcomers, **[AdminLTE](https://appseed.us/admin-dashboards/django-dashboard-adminlte)** is one of the best open-source admin dashboard & control panel theme. Built on top of Bootstrap, AdminLTE provides a range of responsive, reusable, and commonly used components. **Django** is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.
> Features - `Up-to-date dependencies` - [SCSS compilation](#recompile-css) via **Gulp** - **Latest AdminLTE**: *v3.1.0* (stable version) - Modular design, clean codebase - `Session-Based Authentication`, Forms validation - `Deployment`: **Docker**, Gunicorn / Nginx - Support via **Github** and [Discord](https://discord.gg/fZC6hup).
> Links - 👉 [AdminLTE Django](https://appseed.us/admin-dashboards/django-dashboard-adminlte) - product page - 👉 [AdminLTE Django](https://adminlte-django.appseed-srv1.com/) - LIVE deployment - 👉 [AdminLTE Django](https://docs.appseed.us/products/django-dashboards/adminlte) - product documentation
## ✨ Quick Start in `Docker` > Get the code ```bash $ git clone https://github.com/app-generator/django-adminlte.git $ cd django-adminlte ``` > Start the app in Docker ```bash $ docker-compose up --build ``` Visit `http://localhost:85` in your browser. The app should be up & running.
![Django Dashboard AdminLTE - Template project provided by AppSeed.](https://raw.githubusercontent.com/app-generator/django-dashboard-adminlte/master/media/django-dashboard-adminlte-screen.png)
## ✨ How to use it ```bash $ # Get the code $ git clone https://github.com/app-generator/django-adminlte.git $ cd django-adminlte $ $ # Virtualenv modules installation (Unix based systems) $ virtualenv env $ source env/bin/activate $ $ # Virtualenv modules installation (Windows based systems) $ # virtualenv env $ # .\env\Scripts\activate $ $ # Install modules - SQLite Storage $ pip3 install -r requirements.txt $ $ # Create tables $ python manage.py makemigrations $ python manage.py migrate $ $ # Start the application (development mode) $ python manage.py runserver # default port 8000 $ $ # Start the app - custom port $ # python manage.py runserver 0.0.0.0: $ $ # Access the web app in browser: http://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.
## ✨ Code-base structure The project is coded using a simple and intuitive structure presented below: ```bash < PROJECT ROOT > | |-- core/ # Implements app configuration | |-- settings.py # Defines Global Settings | |-- wsgi.py # Start the app in production | |-- urls.py # Define URLs served by all apps/nodes | |-- apps/ | | | |-- home/ # A simple app that serve HTML files | | |-- views.py # Serve HTML pages for authenticated users | | |-- urls.py # Define some super simple routes | | | |-- authentication/ # Handles auth routes (login and register) | | |-- urls.py # Define authentication routes | | |-- views.py # Handles login and registration | | |-- forms.py # Define auth forms (login and register) | | | |-- static/ | | |-- # CSS files, Javascripts files | | | |-- templates/ # Templates used to render pages | |-- includes/ # HTML chunks and components | | |-- navigation.html # Top menu component | | |-- sidebar.html # Sidebar component | | |-- footer.html # App Footer | | |-- scripts.html # Scripts common to all pages | | | |-- layouts/ # Master pages | | |-- base-fullscreen.html # Used by Authentication pages | | |-- base.html # Used by common pages | | | |-- accounts/ # Authentication pages | | |-- login.html # Login page | | |-- register.html # Register page | | | |-- home/ # UI Kit Pages | |-- index.html # Index page | |-- 404-page.html # 404 page | |-- *.html # All other pages | |-- 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
## ✨ Recompile CSS To recompile SCSS files, follow this setup:
**Step #1** - Install tools - [NodeJS](https://nodejs.org/en/) 12.x or higher - [Gulp](https://gulpjs.com/) - globally - `npm install -g gulp-cli` - [Yarn](https://yarnpkg.com/) (optional)
**Step #2** - Change the working directory to `assets` folder ```bash $ cd core/static/assets ```
**Step #3** - Install modules (this will create a classic `node_modules` directory) ```bash $ npm install // OR $ yarn ```
**Step #4** - Edit & Recompile SCSS files ```bash $ gulp scss ``` The generated file is saved in `static/assets/css` directory.
## ✨ Deployment The app is provided with a basic configuration to be executed in [Docker](https://www.docker.com/), [Gunicorn](https://gunicorn.org/), and [Waitress](https://docs.pylonsproject.org/projects/waitress/en/stable/). ### [Gunicorn](https://gunicorn.org/) --- Gunicorn 'Green Unicorn' is a Python WSGI HTTP Server for UNIX. > Install using pip ```bash $ pip install gunicorn ``` > Start the app using gunicorn binary ```bash $ gunicorn --bind=0.0.0.0:8001 core.wsgi:application Serving on http://localhost:8001 ``` Visit `http://localhost:8001` in your browser. The app should be up & running.
### [Waitress](https://docs.pylonsproject.org/projects/waitress/en/stable/) --- Waitress (Gunicorn equivalent for Windows) is meant to be a production-quality pure-Python WSGI server with very acceptable performance. It has no dependencies except ones that live in the Python standard library. > Install using pip ```bash $ pip install waitress ``` > Start the app using [waitress-serve](https://docs.pylonsproject.org/projects/waitress/en/stable/runner.html) ```bash $ waitress-serve --port=8001 core.wsgi:application Serving on http://localhost:8001 ``` Visit `http://localhost:8001` in your browser. The app should be up & running.
## ✨ Credits & Links - [Django](https://www.djangoproject.com/) - The official website - [Boilerplate Code](https://appseed.us/boilerplate-code) - Index provided by **AppSeed** - [Boilerplate Code](https://github.com/app-generator/boilerplate-code) - Index published on Github
--- [AdminLTE Django](https://appseed.us/admin-dashboards/django-dashboard-adminlte) - Provided by **AppSeed [App Generator](https://appseed.us/app-generator)**.