Welcome to the MERN Stack Blog Website! This project is a full-stack application built using MongoDB, Express.js, React, and Node.js. It features a blog where users can read posts, comment on them, and like comments. Additionally, an admin dashboard is available with features such as creating, deleting, updating, and reading posts and comments. Users can upload their profile picture, and Firebase is used to store these images.
Admin Dashboard for managing posts and comments
- Clone the repository:
git clone https://github.com/ashishsen003/blog-app.git
- Navigate to the frontend folder
cd frontend
- Install dependencies
npm install or yarn install
- Start the frontend Server
npm run dev
- This will run frontend server on
http://localhost:5173
- Navigate to the backend folder
cd backend
- Install dependencies
npm install or yarn install
- Start the backend Server
npm run dev
- This will run backend server on
PORT: 3000
- Visit the website and browse through the posts.
- Sign up with your Google account or create a new account.
- You can upload and change your profile picture.
- Explore the dark mode and light mode themes.
- Leave comments on posts and like other user's comments.
- Access the admin dashboard by logging in with the following credentials:
- Email: [email protected]
- Password: admin@blog
- In admin dashboard you can create a new post and can see all the users, posts and comments.
- React
- Node.js
- Express.js
- MongoDB
- Tailwind CSS
- Flowbite react
- Google firebase
- User authentication (sign up, login) with Google OAuth
- Profile picture upload
- Dark mode and light mode themes
- Reading, commenting, and liking comments
- Admin dashboard for managing posts and comments
- Set up environment variables as specified in
.env.example
:VITE_FIREBASE_API_KEY
= 'your-firebase-api-key'MONGO
= 'your-mongodb-uri'JWT_SECRET
= 'your-jwt-secret'
- Copy the
.env.example
file to a new file named.env
. - Replace the placeholder values in the
.env
file with your actual environment variables. - Never commit your
.env
file to version control to avoid exposing sensitive information.
Contributions are welcome! Feel free to submit bug reports, feature requests, or pull requests.