This project is a MERN stack blog application where users can create, read, update, and delete blog posts. The backend is built using Node.js, MongoDB, Firebase Authentication, and Firebase Firestore. The frontend is developed with Vite, Tailwind CSS, Flowbite React, and utilizes React-Redux for state management.
- Create, Read, Update, Delete (CRUD) Operations: Users can perform CRUD operations on blog posts.
- User Authentication: Firebase Authentication is used for user authentication to secure the application.
- Real-time Database: Firebase Firestore is used as the real-time database for storing blog posts.
- State Management: React-Redux is utilized for managing application state efficiently.
- Responsive Design: Tailwind CSS and Flowbite React ensure a responsive and visually appealing UI across devices.
- Node.js: A JavaScript runtime built on Chrome's V8 JavaScript engine for building scalable network applications.
- MongoDB: A NoSQL database for storing application data.
- Firebase Authentication: Simplifies authentication using email/password, Google, Facebook, etc.
- Firebase Firestore: A flexible, scalable database for mobile, web, and server development.
- Vite: A next-generation frontend build tool that is fast, optimized, and easy to use.
- Tailwind CSS: A utility-first CSS framework for building custom designs quickly.
- Flowbite React: A library of accessible and reusable React components built with Tailwind CSS.
- React-Redux: A predictable state container for JavaScript apps, used for efficient state management.
Make sure you have Node.js and npm (or yarn) installed on your machine.
- Clone the repository:
git clone https://github.com/Vishal-Piprotar/mern-blog.git
- Navigate to the project directory:
cd mern-blog
- Install backend dependencies:
cd backend npm install
- Install frontend dependencies:
cd .. cd frontend npm install
- Create a Firebase project and set up Firebase Authentication and Firestore.
- Obtain the Firebase configuration settings for your project.
- Replace the Firebase configuration in the backend and frontend with your own.
- Ensure your Firebase project has the necessary rules set up for Firestore.
- Start the backend server:
cd backend npm start
- Start the frontend development server:
cd .. cd frontend npm run dev
This will start the frontend development server and open the application in your default web browser.
Contributions are welcome! Feel free to open issues or submit pull requests to improve the project.