Skip to content

Commit 2f44bae

Browse files
committed
Bump Codebase & CI/CD support
1 parent 7ac7684 commit 2f44bae

26 files changed

+503
-163
lines changed

.gitignore

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
*.pyc
2+
*.DS_Store
3+
*.egg*
4+
/dist/
5+
/.idea
6+
/docs/_build/
7+
/node_modules/
8+
build/
9+
env
10+
/staticfiles/
11+
12+
#src
13+
*.sqlite*
14+
15+
.env

Dockerfile

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
FROM python:3.9
2+
3+
# set environment variables
4+
ENV PYTHONDONTWRITEBYTECODE 1
5+
ENV PYTHONUNBUFFERED 1
6+
7+
COPY requirements.txt .
8+
# install python dependencies
9+
RUN pip install --upgrade pip
10+
RUN pip install --no-cache-dir -r requirements.txt
11+
12+
COPY . .
13+
14+
# running migrations
15+
RUN python manage.py migrate
16+
17+
# gunicorn
18+
CMD ["gunicorn", "--config", "gunicorn-cfg.py", "core.wsgi"]

README.md

+81-163
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,20 @@
44

55
Open-source **[Django Template](https://www.creative-tim.com/templates/django)** crafted on top of **Soft UI Dashboard**, a modern Bootstrap 5 design. Start your development with a modern Bootstrap 5 Admin template for Django. Soft UI Dashboard is built with over 70 individual components, giving you the freedom of choosing and combining. If you want to code faster, with a smooth workflow, then you should try this template carefully developed with Django, a well-known Python Framework.
66

7-
> Features
7+
<br />
8+
9+
> Features:
810
9-
- Up-to-date [dependencies](./requirements.txt): **Django 3.2.6 LTS**
10-
- [SCSS compilation](#recompile-css) via **Gulp**
11-
- UI Kit: **Soft UI Dashboard** (Free Version)
12-
- Django Codebase - provided by **[AppSeed](https://appseed.us/)**
13-
- UI-Ready app, SQLite Database, Django Native ORM
14-
- Modular design, clean code-base
15-
- Session-Based Authentication, Forms validation
16-
- Deployment scripts: Docker, Gunicorn / Nginx
11+
-`Up-to-date Dependencies`
12+
- ✅ Theme: [Django Admin Soft](https://github.com/app-generator/django-admin-soft-dashboard)
13+
-**Authentication**: `Django.contrib.AUTH`, Registration
14+
- 🚀 `Deployment`
15+
- `CI/CD` flow via `Render`
16+
- [Django Soft - Go LIVE](https://www.youtube.com/watch?v=1QVdQVSkUCI) - `video presentation`
1717

1818
<br />
1919

20-
![Django Soft UI Dashboard - Seed project generated by AppSeed.](https://s3.amazonaws.com/creativetim_bucket/products/541/original/soft-ui-dashboard-django.jpg)
20+
[![Django Soft UI Dashboard - Seed project generated by AppSeed.](https://s3.amazonaws.com/creativetim_bucket/products/541/original/soft-ui-dashboard-django.jpg)](https://www.creative-tim.com/product/soft-ui-dashboard-django)
2121

2222
<br />
2323

@@ -37,16 +37,6 @@ Open-source **[Django Template](https://www.creative-tim.com/templates/django)**
3737

3838
<br />
3939

40-
## Versions
41-
42-
[<img src="https://s3.amazonaws.com/creativetim_bucket/github/html.png" width="60" height="60" />](https://www.creative-tim.com/product/soft-ui-dashboard?ref=readme-sud)
43-
44-
| HTML |
45-
| --- |
46-
| [![Soft UI Dashboard HTML](https://s3.amazonaws.com/creativetim_bucket/products/487/thumb/opt_sdp_thumbnail.jpg)](http://demos.creative-tim.com/soft-ui-dashboard/pages/dashboard.html?ref=readme-sud)
47-
48-
<br />
49-
5040
## Demo
5141

5242
> To authenticate use the default credentials ***test / ApS12_ZZs8*** or create a new user on the **registration page**.
@@ -57,196 +47,103 @@ Open-source **[Django Template](https://www.creative-tim.com/templates/django)**
5747

5848
## Quick start
5949

60-
> UNZIP the sources or clone the repository. After getting the code, open a terminal and navigate to the working directory, with product source code.
50+
> 👉 Download the code
6151
6252
```bash
63-
$ # Get the code
6453
$ git clone https://github.com/creativetimofficial/soft-ui-dashboard-django.git
6554
$ cd soft-ui-dashboard-django
66-
$
67-
$ # Virtualenv modules installation (Unix based systems)
68-
$ virtualenv env
69-
$ source env/bin/activate
70-
$
71-
$ # Virtualenv modules installation (Windows based systems)
72-
$ # virtualenv env
73-
$ # .\env\Scripts\activate
74-
$
75-
$ # Install modules - SQLite Storage
76-
$ pip3 install -r requirements.txt
77-
$
78-
$ # Create tables
79-
$ python manage.py makemigrations
80-
$ python manage.py migrate
81-
$
82-
$ # Start the application (development mode)
83-
$ python manage.py runserver # default port 8000
84-
$
85-
$ # Start the app - custom port
86-
$ # python manage.py runserver 0.0.0.0:<your_port>
87-
$
88-
$ # Access the web app in browser: http://127.0.0.1:8000/
8955
```
9056

91-
> Note: To use the app, please access the registration page and create a new user. After authentication, the app will unlock the private pages.
92-
93-
<br />
94-
95-
## Documentation
96-
The documentation for the **Soft UI Dashboard Django** is hosted at our [website](https://www.creative-tim.com/learning-lab/bootstrap/build-tools-free/soft-ui-dashboard).
97-
9857
<br />
9958

100-
## Code-base structure
101-
102-
The project is coded using a simple and intuitive structure presented bellow:
59+
> 👉 Install modules via `VENV`
10360
10461
```bash
105-
< PROJECT ROOT >
106-
|
107-
|-- core/ # Implements app configuration
108-
| |-- settings.py # Defines Global Settings
109-
| |-- wsgi.py # Start the app in production
110-
| |-- urls.py # Define URLs served by all apps/nodes
111-
|
112-
|-- apps/
113-
| |
114-
| |-- home/ # A simple app that serve HTML files
115-
| | |-- views.py # Serve HTML pages for authenticated users
116-
| | |-- urls.py # Define some super simple routes
117-
| |
118-
| |-- authentication/ # Handles auth routes (login and register)
119-
| | |-- urls.py # Define authentication routes
120-
| | |-- views.py # Handles login and registration
121-
| | |-- forms.py # Define auth forms (login and register)
122-
| |
123-
| |-- static/
124-
| | |-- <css, JS, images> # CSS files, Javascripts files
125-
| |
126-
| |-- templates/ # Templates used to render pages
127-
| |-- includes/ # HTML chunks and components
128-
| | |-- navigation.html # Top menu component
129-
| | |-- sidebar.html # Sidebar component
130-
| | |-- footer.html # App Footer
131-
| | |-- scripts.html # Scripts common to all pages
132-
| |
133-
| |-- layouts/ # Master pages
134-
| | |-- base-fullscreen.html # Used by Authentication pages
135-
| | |-- base.html # Used by common pages
136-
| |
137-
| |-- accounts/ # Authentication pages
138-
| | |-- login.html # Login page
139-
| | |-- register.html # Register page
140-
| |
141-
| |-- home/ # UI Kit Pages
142-
| |-- index.html # Index page
143-
| |-- 404-page.html # 404 page
144-
| |-- *.html # All other pages
145-
|
146-
|-- requirements.txt # Development modules - SQLite storage
147-
|
148-
|-- .env # Inject Configuration via Environment
149-
|-- manage.py # Start the app - Django default start script
150-
|
151-
|-- ************************************************************************
62+
$ virtualenv env
63+
$ source env/bin/activate
64+
$ pip install -r requirements.txt
15265
```
15366

15467
<br />
15568

156-
> The bootstrap flow
157-
158-
- Django bootstrapper `manage.py` uses `core/settings.py` as the main configuration file
159-
- `core/settings.py` loads the app magic from `.env` file
160-
- Redirect the guest users to Login page
161-
- Unlock the pages served by *app* node for authenticated users
162-
163-
<br />
164-
165-
## Recompile CSS
166-
167-
To recompile SCSS files, follow this setup:
168-
169-
<br />
170-
171-
**Step #1** - Install tools
172-
173-
- [NodeJS](https://nodejs.org/en/) 12.x or higher
174-
- [Gulp](https://gulpjs.com/) - globally
175-
- `npm install -g gulp-cli`
176-
- [Yarn](https://yarnpkg.com/) (optional)
177-
178-
<br />
179-
180-
**Step #2** - Change the working directory to `assets` folder
69+
> 👉 Set Up Database
18170
18271
```bash
183-
$ cd apps/static/assets
72+
$ python manage.py makemigrations
73+
$ python manage.py migrate
18474
```
18575

18676
<br />
18777

188-
**Step #3** - Install modules (this will create a classic `node_modules` directory)
78+
> 👉 Create the Superuser
18979
19080
```bash
191-
$ npm install
192-
// OR
193-
$ yarn
81+
$ python manage.py createsuperuser
19482
```
19583

19684
<br />
19785

198-
**Step #4** - Edit & Recompile SCSS files
86+
> 👉 Start the app
19987
20088
```bash
201-
$ gulp scss
89+
$ python manage.py runserver
20290
```
20391

204-
The generated file is saved in `static/assets/css` directory.
205-
206-
<br />
207-
208-
## Deployment
92+
At this point, the app runs at `http://127.0.0.1:8000/`.
20993

210-
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/).
94+
<br />
21195

212-
### [Docker](https://www.docker.com/) execution
213-
---
96+
## Documentation
21497

215-
The application can be easily executed in a docker container. The steps:
98+
The documentation for the **Soft UI Dashboard Django** is hosted at our [website](https://www.creative-tim.com/learning-lab/bootstrap/build-tools-free/soft-ui-dashboard).
21699

217-
> Get the code
100+
<br />
218101

219-
```bash
220-
$ git clone https://github.com/creativetimofficial/soft-ui-dashboard-django.git
221-
$ cd soft-ui-dashboard-django
222-
```
102+
## File Structure
223103

224-
> Start the app in Docker
104+
Within the download you'll find the following directories and files:
225105

226106
```bash
227-
$ sudo docker-compose pull && sudo docker-compose build && sudo docker-compose up -d
107+
< PROJECT ROOT >
108+
|
109+
|-- core/ # Implements app configuration
110+
| |-- settings.py # Defines Global Settings
111+
| |-- wsgi.py # Start the app in production
112+
| |-- urls.py # Define URLs served by all apps/nodes
113+
|
114+
|-- home/
115+
| |
116+
| |-- views.py # Serve HTML pages for authenticated users
117+
| |-- urls.py # Define some super simple routes
118+
|
119+
|
120+
|-- manage.py # Start the app - Django default start script
121+
|-- requirements.txt # Development modules - SQLite storage
122+
|
123+
|-- ************************************************************************
228124
```
229125

230-
Visit `http://localhost:85` in your browser. The app should be up & running.
231-
232126
<br />
233127

234-
## Browser Support
235-
236-
At present, we officially aim to support the last two versions of the following browsers:
128+
> The bootstrap flow
237129
238-
<img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/chrome.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/firefox.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/edge.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/safari.png" width="64" height="64"> <img src="https://s3.amazonaws.com/creativetim_bucket/github/browser/opera.png" width="64" height="64">
130+
- Django bootstrapper `manage.py` uses `core/settings.py` as the main configuration file
131+
- `core/settings.py` loads the app magic from `.env` file
132+
- Redirect the guest users to Login page
133+
- Unlock the pages served by *app* node for authenticated users
239134

240135
<br />
241136

242-
## Resources
137+
## Deploy on [Render](https://render.com/)
243138

244-
- Demo: <https://www.creative-tim.com/live/soft-ui-dashboard-django>
245-
- Download Page: <https://www.creative-tim.com/product/soft-ui-dashboard-django>
246-
- Documentation: <https://www.creative-tim.com/learning-lab/bootstrap/build-tools-free/soft-ui-dashboard>
247-
- License Agreement: <https://www.creative-tim.com/license>
248-
- Support: <https://www.creative-tim.com/support>
249-
- Issues: [Github Issues Page](https://github.com/creativetimofficial/soft-ui-dashboard-django/issues)
139+
- Create a Blueprint instance
140+
- Go to https://dashboard.render.com/blueprints this link.
141+
- Click `New Blueprint Instance` button.
142+
- Connect your `repo` which you want to deploy.
143+
- Fill the `Service Group Name` and click on `Update Existing Resources` button.
144+
- After that your deployment will start automatically.
145+
146+
At this point, the product should be LIVE.
250147

251148
<br />
252149

@@ -291,5 +188,26 @@ If you have questions or need help integrating the product please [contact us](h
291188

292189
<br />
293190

191+
## [PRO Version](https://www.creative-tim.com/product/soft-ui-dashboard-pro-django)
192+
193+
This design is a pixel-perfect [Bootstrap 5](https://www.admin-dashboards.com/bootstrap-5-templates/) Dashboard with a fresh, new design concept. `Soft UI Dashboard PRO` is built with over 300 frontend individual elements, like buttons, inputs, navbars, nav tabs, cards, or alerts, giving you the freedom of choosing and combining.
194+
195+
> Features:
196+
197+
- `Up-to-date Dependencies`
198+
- `Design`: [Django Theme Soft PRO](https://github.com/app-generator/django-admin-soft-pro) - `PRO Version`
199+
- `Sections` covered by the design:
200+
- **Admin section** (reserved for superusers)
201+
- **Authentication**: `Django.contrib.AUTH`, Registration
202+
- **All Pages** available in for ordinary users
203+
- `Docker`, `Deployment`:
204+
- `CI/CD` flow via `Render`
205+
206+
<br />
207+
208+
[![Django - Soft UI Dashboard PRO (premium starter by AppSeed & Creative-Tim](https://user-images.githubusercontent.com/51070104/215022735-dec8e82e-ea91-4494-a521-db421e8637be.png)](https://www.creative-tim.com/product/soft-ui-dashboard-pro-django)
209+
210+
<br />
211+
294212
---
295213
[Soft UI Dashboard - Django Template](https://www.creative-tim.com/product/soft-ui-dashboard-django) - Provided by [Creative Tim](https://www.creative-tim.com/) and [AppSeed](https://appseed.us)

README_deploy.md

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# How to deploy on `Render`
2+
3+
> This document should contains all the steps to deploy the app on render without much effort, using PostgreSQL
4+
5+
https://render.com/docs/deploy-django
6+
7+
## ALL STEPS below
8+
9+
<br />
10+
11+
### 👉 Create `PostgreSQL` database on render
12+
- Go to https://dashboard.render.com/new/database this link.
13+
- Database name should be `berry`.
14+
- Keep the Database, User and Datadog API Key as it is.
15+
- If you want to change database name anything else then you have to change your `render.yaml` file database name too.
16+
17+
<br />
18+
19+
### 👉 Create a Blueprint instance
20+
- Go to https://dashboard.render.com/blueprints this link.
21+
- Click `New Blueprint Instance` button.
22+
- Connect your `repo` which you want to deploy.
23+
- Fill the `Service Group Name` and click on `Update Existing Resources` button.
24+
- After that your deployment will start automatically.

build.sh

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#!/usr/bin/env bash
2+
# exit on error
3+
set -o errexit
4+
5+
python -m pip install --upgrade pip
6+
7+
pip install -r requirements.txt
8+
9+
python manage.py collectstatic --no-input
10+
python manage.py migrate

core/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)