Fullstack open source blogging application made with MongoDB, Express, React & Nodejs (MERN) with tailwind css
In order to run this project locally, simply fork and clone the repository or download as zip and unzip on your machine.
- Open the project in your prefered code editor.
- Go to terminal -> New terminal (If you are using VS code)
- Split your terminal into two (run the Frontend(client) on one terminal and the Backend(api) on the other terminal)
In the first terminal
$ cd client
$ npm install (to install frontend-side dependencies)
$ npm run start (to start the frontend)
In the second terminal
- Set environment variables in .env
- Create your mongoDB connection url, which you'll use as your MONGO
- Supply the following credentials
# --- .env ---
MOGO =
JWT_SECRET_KEY =
# --- Terminal ---
$ npm install (to install backend-side dependencies)
$ npm run dev (to start the backend)
- User registration and login
- Admin dashboard
- Robost app
- Authentication using JWT Tokens
- Authentication with google
- CRUD operations (post create, read, update and delete)
- Upload user ımages
- Commenting on the post and edit
- like on the comment
- loading effect
- Responsive Design
This project was created using the following technologies.
- React js - JavaScript library that is used for building user interfaces specifically for single-page applications
- react-router-dom - To handle routing
- React icons - Small library that helps you add icons to your react apps.
- Google firebase - To store image and to Authenticate with google
- React Quill - To store input as HTML body
- React Redux - React Redux is the official React UI bindings layer for Redux. It lets your React components read data from a Redux store, and dispatch actions to the store to update state.
- Node js -A runtime environment to help build fast server applications using JS
- Express js -The server for handling and routing HTTP requests
- Mongoose - For modeling and mapping MongoDB data to JavaScript
- express-async-handler - Simple middleware for handling exceptions inside of async express routes and passing them to your express error handlers
- jsonwebtoken - For authentication
- Bcryptjs - For data encryption
- Dotenv - Zero Dependency module that loads environment variables
- MongoDB - It provides a free cloud service to store MongoDB collections.
- Website: Ashish Sigdel
- Github: ashishsigdel
- Linkedin: Ashish Sigdel
- Email: a.asis.sigdel01@gmail.com
MIT License
Copyright (c) 2024 - Ashish Sigdel