This is a Responsive Blog Application built using Django for the backend and HTML, CSS, and JavaScript for the frontend. The application allows users to create, read, update, and delete blog posts. The layout is responsive and adapts to different screen sizes, making it accessible across a variety of devices.
- User Authentication: Users can register, log in, and manage their profiles.
- CRUD for Blogs: Create, Read, Update, and Delete blog posts.
- Responsive Design: Layout adjusts for optimal viewing on mobile, tablet, and desktop screens.
- Rich Text Editor: Blog content can be created with a rich text editor.
- Commenting System: Users can comment on blog posts.
- Pagination: Blog posts are paginated for better performance and UI.
- Backend: Django, Django REST Framework
- Frontend: HTML, CSS (Flexbox & Grid), JavaScript (ES6)
- Database: SQLite (can be switched to PostgreSQL or MySQL)
- Authentication: Django's built-in authentication system
- Responsive Framework: Bootstrap or custom media queries
You can view a live demo of the application here.
Before running the application, make sure you have the following installed:
- Python 3.x
- Django
- A text editor or IDE (VS Code, PyCharm, etc.)
-
Clone the repository:
git clone https://github.com/yourusername/responsive-blog-app.git cd responsive-blog-app
2.Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows use venv\Scripts\activate
3.Install the required packages:
pip install -r requirements.txt
4.Apply database migrations:
python manage.py migrate
5.Create a superuser to access the admin panel:
python manage.py createsuperuser
6.Run the development server:
python manage.py runserver
7.Open your browser and go to http://127.0.0.1:8000/ to see the application in action.
Project Structure
. ├── blog/ │ ├── migrations/ │ ├── templates/ │ │ ├── blog/ │ ├── static/ │ │ ├── css/ │ │ ├── js/ │ ├── models.py │ ├── views.py │ ├── urls.py │ └── forms.py ├── mysite/ │ ├── settings.py │ ├── urls.py │ └── wsgi.py ├── db.sqlite3 ├── manage.py └── requirements.txt