Skip to content

minuwu/earthBNB

Repository files navigation

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.


Explore


earthBNB-app-10

earthBNB-app-11

earthBNB-app-12

earthBNB-app-13

earthBNB-app-14

earthBNB-app-15

earthBNB-app-16

earthBNB-app-17

earthBNB-app-18

earthBNB-app-19

earthBNB-app-20

Technologies Used & Their Purpose

  • 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
    Uses express-session and connect-mongo to 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 .env file for secure configuration management.

  • Mapbox SDK
    (Referenced in dependencies) Likely used for geolocation or map features in listings.


About

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.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors