Full-stack MERN project
A web application inspired by Airbnb, allowing users to create, view, and manage property listings with user authentication, image uploads, and interactive maps. Built using the MERN stack and various supporting libraries for a robust, full-featured experience.
-
Node.js & Express.js
The backend is built using Node.js with the Express.js framework, enabling efficient handling of HTTP requests, routing, middleware, and server-side logic. -
MongoDB & Mongoose
MongoDB is used as the NoSQL database, with Mongoose providing an elegant object modeling and schema validation layer for interacting with MongoDB. -
EJS & EJS-Mate
EJS is used as the templating engine for rendering dynamic HTML pages. EJS-Mate adds layout and partial support for EJS templates. -
Passport.js & Passport-Local
Implements user authentication with session management, supporting local username/password login. -
Passport-Local-Mongoose
Simplifies integration of Mongoose with Passport for user authentication. -
Session Management
Usesexpress-sessionandconnect-mongoto store session data in MongoDB, ensuring persistent sessions across server restarts. -
Cloudinary & Multer-Storage-Cloudinary
Handles image uploads and storage in the cloud, allowing users to upload images for listings. -
Joi
Provides schema-based validation for incoming request data, ensuring data integrity. -
Method-Override
Allows HTTP verbs such as PUT and DELETE to be used in places where the client doesn’t support it. -
Connect-Flash
Enables flash messages for user feedback (e.g., success or error notifications). -
dotenv
Loads environment variables from a.envfile for secure configuration management. -
Mapbox SDK
(Referenced in dependencies) Likely used for geolocation or map features in listings.
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)