Skip to content

Travel Mate: A dockerized MERN stack app for booking travel experiences and viewing restaurant menus, built with TypeScript, Redux, and JWT for secure authentication.

Notifications You must be signed in to change notification settings

AdrianSzlag/TravelMate

Repository files navigation

Bookable

image

Bookable is a MERN stack application that offers an all-in-one platform for booking a variety of services from places like hotels, restaurants, barber shops, and more. Its intuitive design and seamless user interface make it easy for you to plan your travel itinerary with the convenience you've always wished for.

Features

  • Responsive Design: Optimized for both desktop and mobile devices.
  • Book hotels, restaurants, bars, barber shops, and many more with just a few clicks.
  • View menus in restaurants and bars.
  • Compare and choose the best services based on ratings and reviews.
  • Geolocation and mapping through the MapLibre API.
  • JWT-based authentication system.
  • Scalable design.
  • State management using Redux.
  • Dockerized for easy setup and deployment.
  • Uses Tailwind CSS for a modern and responsive design.
  • Written in TypeScript for static typing.

Technologies Used

  • MongoDB: A NoSQL database used for storing and retrieving data.
  • Express.js: A flexible web application framework for Node.js.
  • React.js: A JavaScript library for building user interfaces.
  • Node.js: A JavaScript runtime environment used for server-side development.
  • JSON Web Tokens (JWT): A standard for securely transmitting information between parties.
  • Tailwind CSS: A utility-first CSS framework that enables rapid and flexible UI development.
  • Redux: A predictable state container for JavaScript applications, used for efficient state management.
  • Docker: A platform that allows applications to be packaged and run in isolated containers, ensuring consistency across different environments.
  • MapLibre: An open-source mapping library for geolocation features.

Setup & Installation

The application is dockerized, so you can get it up and running with Docker installed.

Step 1: Clone the repository to your local machine.

git clone https://github.com/AdrianSzlag/bookingApp.git
cd bookingApp

Step 2: Set the required .env variables in the backend folder.

JWT_SECRET=<your JWT secret>

Step 3: Start the Docker services:

docker-compose up

Running the App

Once the Docker containers are up, the application should be available at http://localhost:5173

Usage

To start using the app, you first need to create an account. Click on the 'Sign up' button and fill out the form. Once registered, you can log in using the 'Sign in' button.

After logging in, you can start exploring the various features of Travel Mate. Browse through the list of services, check out menus, make bookings, and manage your bookings all through the app.

Happy Travelling!

About

Travel Mate: A dockerized MERN stack app for booking travel experiences and viewing restaurant menus, built with TypeScript, Redux, and JWT for secure authentication.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages