Django Simple Blog is a MVP(Minimal Viable Product) blogging app in django, made as a pet project for educational purpose
Django.Blog.mp4
- Frontend: HTML / CSS / Bootstrap (5.2)
- Backend: Django (4.0.5) / Django-Rest-Framework (3.13.1)
- Database: Postgres
- Login / Register: abstract user class implemented for easy customisation as django-docs recommend
- WYSIWYG Editor: TinyMCE used as text editor.
- Image Uploading: Users can upload images for their posts, that will be converted into .webp format automatically,to save some space. Also images get into /media/posts/year/month/day/ to reduce load on a File System
- DRF API: Api for future frontend side of the project. JWT not implemented because of simplicity of the project.
- Posting / Editing: Registered users can post and edit own posts
- Private posts: Users can make their posts private
- Filtering: Clicking on author username will show public posts of this author. Or public + private posts of current logged user.
- Cover with tests (pytest)
- Add comments to posts
- Likes/Dislikes rating system
- Search
- Fork and Clone the repository using:
git clone https://github.com/habiboolean/Django-Simple-Blog.git
- Create virtual environment:
python -m venv env
env\Scripts\activate
- Install dependencies using:
pip install -r requirements.txt
- Put your database connection settings:
settings.py line 95
- Headover to Project Directory:
cd BlogPetProject
- Make migrations using:
python manage.py makemigrations
- Migrate Database:
python manage.py migrate
- Create a superuser:
python manage.py createsuperuser
- Run server using:
python manage.py runserver