A full-stack blog application built using the MERN stack (MongoDB, Express, React, and Node.js). This project was developed to gain hands-on experience with the MERN stack and related technologies.
- Display all posts fetched from the MongoDB database.
- User registration, login, and logout functionalities.
- Create posts for registered users.
- Edit functionality for authors of the post.
- Authentication using JWT.
- Handling CORS errors.
- Storing user information using React context.
- Using Mongoose to create models and handle database operations.
- Handling relationships in a NoSQL database.
- JWT for authentication.
- Password encryption using bcrypt.
- Cookie handling for sessions.
express
: Fast, unopinionated, minimalist web framework for Node.js.cors
: Middleware to enable CORS with various options.mongoose
: Elegant MongoDB object modeling for Node.js.bcrypt
: A library to help you hash passwords.jsonwebtoken
: Implementation of JSON Web Tokens.cookie-parser
: Middleware to parse cookies.multer
: Middleware for handlingmultipart/form-data
.fs
: Node.js core module to work with the file system.
react-router-dom
: DOM bindings for React Router.react-quill
: A Quill component for React.date-fns
: Modern JavaScript date utility library.
- Node.js and npm installed.
- MongoDB instance running (local or cloud).