Blogifyon is a modern, full-featured blogging platform built with Django and ReactJS. It allows users to write, edit, and share blog posts with rich formatting using CKEditor5. The platform also offers user interaction features like likes, comments, saving posts, and real-time notifications.
-
🔐 User Authentication
- Register, login, logout
- Email verification for account activation
- Password reset functionality
-
🔒 CAPTCHA Protection
- Integrated CAPTCHA in registration & login to prevent bot attacks.
-
📝 Rich Text Editor (CKEditor5)
- Fully integrated rich-text editor for creating beautiful blog posts with images, and formatted content.
-
⚡ Real-Time Notifications
- Powered by Django Channels and WebSockets.
-
🔍 Search & Filter System
- Search posts by title, category, and filter results.
-
❤️ User Engagement
- Like posts
- Comment & reply system
- Save favorite posts
-
🖼️ Profile Management
- Edit user profile
- Upload profile picture
-
🚀 Performance Optimization
- Redis integration for real-time WebSocket notifications and caching.
- React.js
- Tailwind CSS
- React Router
- CKEditor5
- Django
- Django Rest Framework (DRF)
- Django Channels (WebSockets)
- Redis (for real-time notifications & caching)
- Frontend: Vercel
- Backend: Render
👉 https://blogifyon.vercel.app/
- 🖥 Frontend — Blogifyon-Frontend GitHub
- 🖥 Backend — Blogifyon-Backend GitHub
- 🖥 Swagger UI: Swagger UI Url
- 🖥 Redoc: Redoc Url
1️⃣ Clone the repository:
git clone https://github.com/saminmahmud/Blogifyon-Backend.git
cd Blogifyon-Backend2️⃣ Create virtual environment and activate it:
python -m venv env
source env/bin/activate # Linux/macOS
env\Scripts\activate # Windows3️⃣ Install dependencies:
pip install -r requirements.txt4️⃣ Setup environment variables (.env file)
ENVIRONMENT=development # or production
EMAIL=
EMAIL_PASSWORD=
DATA_SITE_KEY=
RECAPTCHA_SECRET_KEY=
REDIS_URL=
SECRET_KEY=5️⃣ Run migrations:
python manage.py makemigrations
python manage.py migrate6️⃣ Run server:
python manage.py runserver7️⃣ Start Redis server and Django Channels for WebSockets support.
1️⃣ Clone frontend repo:
git clone https://github.com/saminmahmud/Blogifyon-Frontend.git
cd Blogifyon-Frontend3️⃣ Create .env file and configure backend API URL.
VITE_SITE_KEY=YOUR_CAPTCHA_SITE_KEY4️⃣ Change baseUrl & SOCKET_URL from src/baseUrl/baseUrl.js
5️⃣ Start development server:
npm run dev