This is a simple blog app.
It uses Django Framework for both frontend and backend as well as bootstrap for css styling.
Posts can be added/deleted/edited via admin panel (localhost:8000/admin by default).
All credentials are stored in a provided .env
file.
-
Blog is the main project app, defining settings and main url routing
-
Pages app is reponsible for displaying main static pages: index (homepage), about, and contact_form
-
Posts app mostly handles 'Post' model, defines db fields, and single post view
-
Each app stores its template files inside templates folder, partials and base.html are used to reduce redundant frontend code.
Server uses managed postgresql instance. SendGrid is an email API provider.
Create new python virtualenv.
Run:
pip install -r requirements.txt
or
# (pip3 install pipenv)
pipenv install
Ensure secrets inside .env
file are correct.
Run:
./manage.py runserver
# or (if using pipenv)
pipenv shell; ./manage.py runserver
Emails are sent to account defined by ADMIN_EMAIL
environment variable (has to be enabled and whitelisted sendgrid api management panel).
Credentials to that account are provided in the .env
file.