Skip to content

Pixie-19/BookAStay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BookAStay

A full-stack Airbnb-style property listing and review platform built using Node.js, Express, MongoDB, and EJS. The application allows users to browse all properties, view detailed listings, create new listings, and manage reviews within a structured MVC architecture.


Overview

BookAStay replicates core functionality found in modern accommodation platforms. It provides a server-rendered interface where users can explore listings, view images, check pricing, and interact with each property through reviews. The project demonstrates backend development using Express and MongoDB, server-side rendering with EJS, and clean routing with validation and custom error handling.

Tech Stack:

Frontend: EJS, HTML5, CSS3, Bootstrap
Backend: Node.js, Express.js
Database: MongoDB, Mongoose


Project Structure


BookAStay/
│
├── models/
│ ├── listing.js
│ └── review.js
│
├── routes/
│ ├── listings.js
│ └── reviews.js
│
├── views/
│ ├── listings/
│ ├── reviews/
│ ├── layouts/
│ └── partials/
│
├── public/
│ ├── css/
│ └── images/
│
├── utils/
│ ├── ExpressError.js
│ └── wrapAsync.js
│
├── schema.js
├── app.js
└── package.json

🚀 Installation & Setup

Follow these steps to get the project up and running locally:

1. Clone the repository

git clone https://github.com/Pixie-19/BookAStay
cd BookAStay

2. Install dependencies

npm install

3. Start MongoDB

Make sure MongoDB is running locally or update the connection string in your project.

4. Run the development server

node app.js

5. Open the app

Visit http://localhost:8080
in your browser to see the application running.

About

Airbnb clone

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published