AI-Powered Blogging Platform with Intelligent Content Generation
Powered by cutting-edge AI and modern technologies:
Visit the π LINK π
| User Interface | Admin Dashboard |
|---|---|
![]() |
![]() |
- Overview
- Key Features
- Tech Stack
- Architecture
- Getting Started
- AI Capabilities
- Admin Dashboard
- API Endpoints
- Deployment
- Performance
- Contributing
- License
- Support
QUICKBLOG is a revolutionary blogging platform that combines traditional content management with artificial intelligence to provide:
- π€ AI Content Generation: Automatically generate blog posts using Google Gemini
- π Rich Text Editor: Advanced editing with Quill.js integration
- π¨βπΌ Admin Dashboard: Complete content management system
- π¬ Comment System: Engage readers with interactive discussions
- πΌοΈ Media Management: Optimized image handling with ImageKit
- π± Responsive Design: Seamless experience across all devices
Built with the MERN stack and integrated with Google's Gemini AI for intelligent content creation.
- Content Generation: Generate complete blog posts from prompts
- Topic Suggestions: AI-driven content ideas and outlines
- SEO Optimization: AI-assisted meta descriptions and titles
- Content Enhancement: Improve existing articles with AI suggestions
- Quill.js Integration: Rich text editor with formatting options
- Markdown Support: Dual editing capabilities
- Image Embedding: Drag-and-drop image uploads
- Auto-save: Never lose your work with automatic saving
- Blog Management: Create, edit, and delete blog posts
- Comment Moderation: Approve, delete, and manage user comments
- Analytics: View blog performance and reader engagement
- User Management: Manage authors and contributors
- Comment System: Threaded comments with replies
- User Profiles: Reader engagement and profiles
- Social Sharing: Easy content distribution
- Newsletter Integration: Email subscription management
- ImageKit Integration: Optimized image storage and delivery
- Automatic Optimization: Image compression and resizing
- CDN Delivery: Fast global content delivery
- Gallery Management: Organized media library
- React 19 - Latest React with concurrent features
- Vite - Next-generation build tool
- Tailwind CSS - Utility-first CSS framework
- Axios - HTTP client for API calls
- React Router DOM - Client-side routing
- Quill.js - Rich text editor
- React Hot Toast - User notifications
- Marked - Markdown parsing
- Moment.js - Date formatting
- Framer Motion - Smooth animations
- Node.js - JavaScript runtime environment
- Express 6 - Web application framework
- MongoDB - NoSQL database with Mongoose ODM
- Google Gemini AI - Advanced AI content generation
- ImageKit - Image optimization and CDN
- JWT - Authentication tokens
- Multer - File upload handling
- CORS - Cross-origin resource sharing
- Bcrypt - Password hashing
- Vercel - Frontend deployment platform
- Render/Railway - Backend deployment
- MongoDB Atlas - Cloud database service
- ImageKit CDN - Media content delivery
QuickBlog/
βββ client/ # React Frontend
β βββ src/
β β βββ assets/ # Static assets
β β βββ components/ # Reusable components
β β β βββ BlogCard.jsx # Blog post preview
β β β βββ CommentSection.jsx # Comments and replies
β β β βββ RichTextEditor.jsx # Quill.js editor
β β β βββ SearchBar.jsx # Blog search functionality
β β β βββ Sidebar.jsx # Navigation and categories
β β β βββ ... # Other components
β β βββ pages/ # Route pages
β β β βββ Admin/ # Admin dashboard pages
β β β β βββ Dashboard.jsx
β β β β βββ BlogManagement.jsx
β β β β βββ Comments.jsx
β β β β βββ Analytics.jsx
β β β βββ Blog/ # Blog-related pages
β β β β βββ BlogPost.jsx
β β β β βββ CreateBlog.jsx
β β β β βββ EditBlog.jsx
β β β β βββ BlogList.jsx
β β β βββ Home.jsx # Landing page
β β β βββ Login.jsx # Authentication
β β β βββ Profile.jsx # User profile
β β βββ context/ # React context
β β β βββ AppContext.jsx # Global state management
β β βββ hooks/ # Custom React hooks
β β βββ utils/ # Utility functions
β β βββ index.css # Global styles
β β βββ main.jsx # Application entry point
β βββ package.json # Dependencies and scripts
β βββ vite.config.js # Vite configuration
β
βββ server/ # Express Backend
β βββ config/ # Configuration files
β βββ controllers/ # Business logic
β β βββ blogController.js # Blog CRUD operations
β β βββ aiController.js # Gemini AI integration
β β βββ commentController.js # Comment management
β β βββ userController.js # User authentication
β β βββ adminController.js # Admin operations
β βββ middleware/ # Custom middlewares
β β βββ auth.js # JWT authentication
β β βββ upload.js # File upload handling
β β βββ admin.js # Admin role verification
β βββ models/ # Database models
β β βββ Blog.js # Blog post schema
β β βββ Comment.js # Comment schema
β β βββ User.js # User schema
β β βββ Category.js # Category schema
β βββ routes/ # API routes
β β βββ blogRoutes.js # Blog endpoints
β β βββ aiRoutes.js # AI generation endpoints
β β βββ commentRoutes.js # Comment endpoints
β β βββ userRoutes.js # User endpoints
β β βββ adminRoutes.js # Admin endpoints
β βββ package.json # Dependencies and scripts
β βββ server.js # Server entry point
βββ README.md # Project documentation- Node.js (v18 or higher)
- npm (v8 or higher)
- MongoDB Atlas account or local MongoDB
- Google Gemini API account
- ImageKit account
- Clone the repository:
git clone https://github.com/elyse502/QuickBlog.git
cd QuickBlog- Install client dependencies:
cd client && npm install- Install server dependencies:
cd ../server && npm installClient (.env)
VITE_API_BASE_URL=http://localhost:5000
VITE_IMAGEKIT_URL_ENDPOINT=your-imagekit-endpoint
VITE_IMAGEKIT_PUBLIC_KEY=your-imagekit-public-keyServer (.env)
MONGODB_URI=your-mongodb-connection-string
GEMINI_API_KEY=your-google-gemini-key
IMAGEKIT_PRIVATE_KEY=your-imagekit-private-key
JWT_SECRET=your-jwt-secret-key
ADMIN_EMAIL=your-admin-email
PORT=5000- Start the development servers:
# Terminal 1 - Start backend
cd server && npm run server
# Terminal 2 - Start frontend
cd client && npm run dev- Content Generation: Generate complete blog posts from topics
- Outline Creation: AI-powered article structure generation
- SEO Optimization: Meta descriptions and keyword suggestions
- Content Improvement: Enhance existing articles with AI
- Grammar Checking: AI-powered writing corrections
- Tone Adjustment: Modify writing style and voice
- Plagiarism Check: Ensure content originality
- Readability Score: Optimize content for target audience
- Topic Research: AI-driven content ideas
- Trend Analysis: Identify popular topics
- Audience Targeting: Content tailored to reader demographics
- Performance Prediction: Estimate engagement potential
- Blog Statistics: Total posts, views, comments
- Performance Metrics: Reader engagement analytics
- Recent Activity: Latest comments and posts
- Quick Actions: Common admin operations
- Create New Blog: Rich text editor with AI assistance
- Edit Existing Posts: In-place editing and updates
- Bulk Operations: Multiple post management
- Category Management: Organize content by topics
- Approve/Delete: Manage user comments
- Spam Detection: AI-powered spam filtering
- User Management: Handle commenter accounts
- Moderation Logs: Track all moderation actions
- Traffic Analysis: Page views and visitor statistics
- Popular Content: Most read blog posts
- User Engagement: Comments and social shares
- SEO Performance: Search ranking and visibility
| Method | Endpoint | Description |
|---|---|---|
| POST | /register |
User registration |
| POST | /login |
User login |
| GET | /profile |
Get user profile |
| PUT | /profile |
Update user profile |
| Method | Endpoint | Description |
|---|---|---|
| GET | / |
Get all blog posts |
| GET | /featured |
Get featured posts |
| GET | /category/:category |
Get posts by category |
| GET | /search |
Search blog posts |
| GET | /:id |
Get specific blog post |
| POST | / |
Create new blog post (Admin) |
| PUT | /:id |
Update blog post (Admin) |
| DELETE | /:id |
Delete blog post (Admin) |
| Method | Endpoint | Description |
|---|---|---|
| POST | /generate-blog |
Generate blog content |
| POST | /generate-outline |
Generate article outline |
| POST | /improve-content |
Enhance existing content |
| POST | /suggest-topics |
Get content ideas |
| Method | Endpoint | Description |
|---|---|---|
| GET | /blog/:blogId |
Get comments for blog |
| POST | / |
Add new comment |
| PUT | /:id |
Update comment |
| DELETE | /:id |
Delete comment |
| POST | /:id/reply |
Reply to comment |
| Method | Endpoint | Description |
|---|---|---|
| GET | /dashboard |
Get admin dashboard data |
| GET | /comments |
Get all comments for moderation |
| PUT | /comments/:id/approve |
Approve comment |
| DELETE | /comments/:id |
Delete comment |
| GET | /analytics |
Get blog analytics |
Deploy with environment variables configured for:
- MongoDB Atlas connection
- Google Gemini API integration
- ImageKit configuration
- JWT secret key
# Recommended: MongoDB Atlas Cloud
https://www.mongodb.com/atlas# Production environment variables
MONGODB_URI=your-production-mongodb-uri
GEMINI_API_KEY=your-production-gemini-key
JWT_SECRET=your-production-jwt-secret
NODE_ENV=production- β‘ Fast Loading: Vite-optimized build process
- π― SEO Optimized: Server-side rendering ready
- π± Mobile First: Responsive Tailwind design
- π Security: JWT authentication and input validation
- πΎ Efficient Queries: MongoDB optimized indexing
- πΌοΈ Image Optimization: ImageKit CDN delivery
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Follow React best practices and hooks
- Use meaningful commit messages
- Write comprehensive documentation
- Test all AI integration features
- Ensure responsive design compliance
Distributed under the MIT License. See LICENSE for more information.
For support, email elyseniyibizi502@gmail.com or create an issue in the GitHub repository.
For any questions or support, please contact:
- NIYIBIZI ElysΓ©eπ¨πΏβπ» | Github | Linkedin | Twitter.
- Email: elyseniyibizi502@gmail.com
QUICKBLOG - Where AI meets creative writing! π
Built with β€οΈ using the MERN stack and Google's Gemini AI technology.

