Skip to content

Full Stack AI Powered Blog App using MERN Stack, Google Gemini and ImageKit API

License

Notifications You must be signed in to change notification settings

Abhilash-S123/Blog-App

Repository files navigation

🚀 QuickBlog - AI-Powered Blogging Platform

A responsive web application where admins can create blogs using AI and users can read and comment on posts.

🌐 Live Demo

View Live Project

📸 Screenshots

Home Page

Home Page

Admin Dashboard

Admin Dashboard

✨ Features

👨‍💼 Admin Features

  • 🤖 Create blogs using Google Gemini AI
  • 📝 Publish and unpublish blogs
  • 🔐 JWT authentication for secure access
  • ✅ Verify or delete user comments
  • 🛡️ Protected routes with middleware

👥 User Features

  • 📖 Read published blogs
  • 💬 Add comments on blog posts
  • 📱 Fully responsive design with Tailwind CSS

🛠️ Tech Stack

  • Frontend: React.js, Tailwind CSS
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • APIs: Google Gemini AI, ImageKit API
  • Authentication: JWT

🔑 Demo Credentials

Admin Login:

📦 Installation

Prerequisites

  • Node.js
  • MongoDB
  • Git

Setup

  1. Clone the repository
git clone https://github.com/Abhilash-S123/Blog-App.git
cd Quickblog
  1. Backend Setup
cd server
npm install

Create .env file:

PORT=5000
MONGODB_URL=your_mongodb_uri
JWT_SECRET=your_jwt_secret
GEMINI_API_KEY=your_gemini_api_key
IMAGEKIT_PUBLIC_KEY=your_imagekit_public_key
IMAGEKIT_PRIVATE_KEY=your_imagekit_private_key
IMAGEKIT_URL_ENDPOINT=your_imagekit_endpoint
ADMIN_PASSWORD=set_any_admin_password
ADMIN_EMAIL=set_any_admin_email

Start server:

npm run server
  1. Frontend Setup
cd client
npm install

Create .env file:

VITE_BACKEND_URL=http://localhost:5000

Start frontend server:

npm run dev

📄 License

MIT License

👤 Author

Abhilash.S - GitHub Profile


⭐ If you like this project, please give it a star!

About

Full Stack AI Powered Blog App using MERN Stack, Google Gemini and ImageKit API

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published