Skip to content

A dynamic and fully responsive MERN stack blog application, packed with exciting features and modern design. Secure both the client and backend for specific pages, like the admin dashboard.

Notifications You must be signed in to change notification settings

Pooja675/MERN-Blog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

75 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

MERN Stack Blog Application

mern-blog

Fully responsive MERN stack blog application, packed with exciting features and modern design.

React TailwindCSS Node.js

πŸš€ Overview

MERN Stack Blog App – Developed a fully responsive blog platform with secure authentication, role-based admin dashboard, and full CRUD operations for posts, comments, and users. Integrated advanced search with filters and sorting, interactive commenting features, and dark mode for enhanced user experience, and deployed the application for public access and portfolio showcasing.

✨ Key Features

  • Responsive Design:: Delivers a seamless experience across desktop, tablet, and mobile devices.
  • Secure Authentication: Provides login and signup with robust user authentication and role-based access.
  • Admin Dashboard: Manage posts, comments, and users with full CRUD functionality.
  • Advanced Search: Search posts by title, apply filters, sorting, and pagination for quick discovery.
  • Interactive Comments: Users can add, edit, and delete comments, fostering community engagement.
  • Dark Mode: Offers a sleek, user-friendly interface with light and dark theme options.
  • Dynamic Routing: Smooth navigation across different pages with fast loading and transitions.
  • Free Deployment: Fully hosted and accessible online for public use and portfolio showcasing.

πŸ› οΈ Tech Stack

Frontend

  • React 18: Component-based UI development
  • TailwindCSS: Utility-first CSS framework for styling
  • React Router: Client-side routing
  • Redux: State management
  • JWT Authentication: Secure user authentication

Backend

  • Node.js: JavaScript runtime
  • Express: Web application framework
  • MongoDB: NoSQL database for data storage
  • Mongoose: MongoDB object modeling
  • JWT: JSON Web Tokens for authentication

Tools

  • Vite: Next-generation frontend tooling
  • ESLint: Code quality and style checking
  • Render: Frontend deployment and hosting
  • Git & GitHub: Version control and collaboration

πŸ“Έ Screenshots

SignIn Page Home Page1 Dashborad Page Profile Page Post Page Users Page Edit Page Blog Page

🌐 Live Demo

Experience MERN Stack Blog App in action: https://mern-blog55.onrender.com/

Demo Accounts

πŸ“₯ Installation

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn
  • MongoDB (local or cloud instance)

Frontend Setup

  1. Clone the repository
    git clone https://github.com/Pooja675/MERN-Blog.git
  2. Navigate to the client directory
    cd MERN-BLOG/client
  3. Install dependencies
    npm install
    # or
    yarn install
  4. Create a .env file in the client directory with the following variables:
    VITE_FIREBASE_API_KEY=your_firebase_api_key
    
  5. Start the development server
    npm run dev
    # or
    yarn dev
  6. Open your browser and navigate to http://localhost:5173

Backend Setup

  1. Clone the backend repository
    git clone https://github.com/Pooja675/MERN-Blog.git
  2. Navigate to the server directory
    cd MERN-BLOG/api
  3. Install dependencies
    npm install
    # or
    yarn install
  4. Create a .env file with the following variables:
    MONGO=your_mongodb_connection_string/or ask the repo owner for the URI
    JWT_SECRET=your_jwt_secret
    
  5. Start the server
    npm start
    # or
    yarn start

Note:

You might need to run both the client and server simultaneously for fetching data in your local machine.

πŸ“ Project Structure

client/
β”œβ”€β”€ public/             # Static files
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/     # Reusable UI components
β”‚   β”œβ”€β”€ pages/          # Main application pages
β”‚   β”œβ”€β”€ redux/          # State management
β”‚   β”œβ”€β”€ firebase.js     # Firebase Configuration
β”‚   β”œβ”€β”€ App.jsx         # Main application component
β”‚   └── main.jsx        # Application entry point
β”œβ”€β”€ index.html          # HTML template
└── vite.config.js      # Vite configuration

api/
β”œβ”€β”€ controllers/        # Request handlers
β”œβ”€β”€ models/             # Database models
β”œβ”€β”€ routes/             # API routes
β”œβ”€β”€ utils/              # Utility functions
└── index.js            # Server entry point

🎯 Result and Conclusion

A fully functional and responsive blog platform with secure authentication, admin management, advanced search, interactive commenting, and dark mode. The project showcases end-to-end full-stack development skills, combining frontend, backend, and deployment expertise to deliver a modern, user-friendly web application.

About

A dynamic and fully responsive MERN stack blog application, packed with exciting features and modern design. Secure both the client and backend for specific pages, like the admin dashboard.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages