Skip to content
@VistaStay

VistaStay

VistaStay is an AI-powered hotel booking platform with advanced filters, secure Stripe payments, and seamless user authentication using Clerk. Built with React,

🏨 VistaStay - Hotel Booking Platform

Welcome to VistaStay! 🌍✨ Your one-stop destination for seamless hotel booking with AI-powered search, secure payments, and advanced filters. 🏡💳
🌐 Live Demo: VistaStay Web App

📌 About VistaStay

VistaStay is a MERN stack hotel booking platform designed for smooth and secure reservations. It offers AI-enhanced search, flexible filtering options, date-based booking, and Stripe-powered payments.

🔥 Key Features

AI-Powered Search - Smart search powered by OpenAI
Advanced Filters - Filter hotels by location, price (ascending/descending), amenities
Hotel Details - View hotel cards with detailed descriptions and images
Date-Based Booking - Select check-in & check-out dates, auto-calculating total nights
Secure Payment Gateway - Powered by Stripe for safe online transactions
User Authentication & Authorization - Powered by Clerk
State Management - Redux Toolkit for smooth global state handling
Account Page - View and manage personal booking history and account details

🚀 Tech Stack

🏗️ Frontend

  • React.js - UI development
  • Redux Toolkit - State management
  • Clerk Authentication - Secure login system
  • Tailwind CSS - Modern UI styling

🖥️ Backend

  • Node.js & Express.js - Backend API
  • MongoDB Atlas - Cloud database
  • JWT & Clerk - Authentication & authorization
  • Stripe API - Secure online payments

🔗 Integrations

  • OpenAI API - AI-powered search
  • Stripe Payment Gateway - Secure checkout process

🏗️ Installation

🔹 Clone the Repository

git clone https://github.com/your-username/VistaStay.git
cd VistaStay

🔹 Backend Setup

cd Backend
npm install
npm start

🔹 Frontend Setup

cd Frontend
npm install
npm run dev

🔐 Authentication & State Management

User Authentication (Powered by Clerk)

  • Secure user authentication via Clerk API
  • JWT-based authorization for protected routes
  • User roles - Admin, Hotel Owner, Customer

State Management (Redux Toolkit)

Used for global state handling across the app.

  • User Authentication State
  • Hotel List & Filters State
  • Booking State
  • Payment Process State

💳 Stripe Payment Integration

Checkout Process

  • User selects a hotel
  • Chooses check-in & check-out dates
  • Stripe handles secure payment processing
  • User receives a confirmation email

Payment API Endpoint

POST /api/payment

📜 API Endpoints

🔹 Hotels

  • GET /api/hotels - Get all hotels
  • GET /api/hotels/:id - Get a single hotel
  • POST /api/hotels - Add a new hotel
  • PUT /api/hotels/:id - Update hotel details
  • DELETE /api/hotels/:id - Remove a hotel

🔹 Booking

  • POST /api/bookings - Create a new booking
  • GET /api/bookings/:userId - Get all bookings for a user

🔹 Authentication

  • POST /api/auth/register - Register a new user
  • POST /api/auth/login - Login user
  • GET /api/auth/me - Get user details

🔹 Payments

  • POST /api/payment - Process payment via Stripe

📬 Contact

📧 Email: [email protected]

🎉 Pages

🔹 Homepage

Image

🔹 Trending hotels(AI search filtering section)

Image

🔹 AI search

Image

🔹 Booking hotels with dates

Image

🔹 Payment page

Image

🔹 Create hotel

Image

🔹 filtering hotel section

Image

🔹 filtered hotel

Image

🔹 Booking page

Image

🔹 Filters

Image

🔹 Payment page

Image

Pinned Loading

  1. .github .github Public

Repositories

Showing 3 of 3 repositories

Top languages

Loading…

Most used topics

Loading…