Skip to content

nitesh31mishra/Mern-Booking-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FindStay

Hotel Booking Application built using MERN (MongoDB, Express, React, Node) stack technologies.

Technology

  • NodeJS
  • ExpressJS
  • MongoDB
  • React
  • TypeScript
  • Tailwind CSS
  • Cloudinary - Cloud-based image and video storage service.
  • Stripe - Payment Gateway Platform to secure online payments and is commonly used to handle transactions in web applications.

Application Key Features

  1. User Authentication
    Implemented secure login and registration using HTTP cookies and JWT for a seamless user experience.

  2. Hotel Management
    Implemented the ability to add, edit, and view hotels. From handling form inputs to managing state, ensuring efficient hotel management.

  3. Image Uploads
    Integrated image uploads using Cloudinary Service , allowing users to easily upload and showcase images for each hotel listing, enhancing visual appeal.

  4. Search, Sort, & Filter
    Enhanced user experience with robust search, sort, and filter functionalities. Users can effortlessly find their perfect stay based on preferences.

  5. Online Payments
    Integrated Stripe for secure and efficient hotel booking payments, providing a seamless and trusted payment experience.

  6. Booking Management
    Implemented features to view and manage bookings, allowing users to keep track of reservations and easily manage their bookings.

  7. Recent Hotels on Home Page
    Displayed recently added hotels on the home page, keeping the content dynamic and engaging. Users can discover fresh and exciting accommodation options easily.

Running the Application

  1. Backend:

    • Navigate to the backend directory.
    • Install dependencies: npm install.
    • Start the server: npm run dev.
    • The application should now be running on http://localhost:7000
  2. Frontend:

    • Open a new terminal and navigate to the frontend directory.
    • Install dependencies: npm install.
    • Start the frontend application: npm run dev.
    • The application should now be running on http://localhost:5173 but verify this in your command line terminal

Stripe - Payment Gateway Workflow

Below is the Payment Gateway (Stripe) Integration workflow with both client and server side. Stripe Integration WorkFlow

Development practices

  1. End-to-End testing Performed end-to-end testing on the multiple features of application using playwright extension in VSCode.

  2. Code Quality Tried to maintain good code quality and industry best practices.