Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jamal-saadeddin/travelo
Travelo - Your Ultimate Travel Booking Platform
https://github.com/jamal-saadeddin/travelo
date-picker js-cookie jwt-decode lightgallery material-ui react-router-dom react-scroll react-slick react-typescript slick-carousel storybook swagger tanstack-react-query
Last synced: about 1 month ago
JSON representation
Travelo - Your Ultimate Travel Booking Platform
- Host: GitHub
- URL: https://github.com/jamal-saadeddin/travelo
- Owner: Jamal-SaadEddin
- Created: 2024-08-03T11:48:28.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-10-07T06:52:16.000Z (4 months ago)
- Last Synced: 2024-11-07T07:51:55.013Z (3 months ago)
- Topics: date-picker, js-cookie, jwt-decode, lightgallery, material-ui, react-router-dom, react-scroll, react-slick, react-typescript, slick-carousel, storybook, swagger, tanstack-react-query
- Language: TypeScript
- Homepage: https://app-travelo.netlify.app
- Size: 12.4 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Travelo - Your Ultimate Travel Booking Platform
**Travelo** is your gateway to discovering and booking the best hotels and accommodations around the globe. Designed with simplicity and efficiency in mind, our platform makes it easier than ever to find your ideal place to stay, whether for leisure or business.
## Quick Links
- [**Live Site**](https://app-travelo.netlify.app/)
- [**Documentation**](https://sumptuous-papyrus-489.notion.site/Travelo-Documentation-0ff9fb05e165806b87d0fc5cf8b6111a?pvs=4)## Built With
- [](https://react.dev/) **React**: UI library for building the user interface.
- [](https://www.typescriptlang.org/) **TypeScript**: Static type checking for catching errors early.
- [](https://tanstack.com/query/v3/docs/framework/react/overview) **React Query**: Data-fetching and caching for improved performance.
- [](https://mui.com/) **MUI**: UI component library for building responsive, beautiful interfaces.
- [](https://docs.pmnd.rs/zustand/getting-started/introduction) **Zustand**: State management for handling complex application states.
- [
](https://storybook.js.org/) **Storybook**: Frontend workshop for building UI components and pages in isolation.
- [](https://prettier.io/) **Prettier**: Code formatter ensuring consistent styling.## Features
- **Token-based Authentication**: Secure login with role-based access for users and admins.
- **User Roles**: Different roles for Users and Admins, providing specialized access and functionality.
- **Admin Dashboard**: Manage hotels, bookings, and user data efficiently.
- **Search and Filtering**: Advanced filtering options for users to find hotels based on specific criteria.
- **Fully Responsive**: The platform is optimized for all screen sizes, providing a smooth experience on mobile, tablet, and desktop.
- **Loading Skeletons**: Ensure better user experience with loading skeletons while fetching data.
- **Optimized Performance**: Client-side caching with `React Query` for fast and efficient data retrieval.
- **Custom Hooks**: Reusable custom hooks for logic separation and cleaner code.
- **Form Handling**: Integration with `Formik` and `Yup` for seamless and validated form submissions.
- **Payment Integration**: Secure and easy-to-use payment options for seamless booking.## Authentication
**Travelo** features a robust token-based authentication system with distinct user roles. Here are the credentials for testing the application:
- **User**:
- Username: `user`
- Password: `user`- **Admin**:
- Username: `admin`
- Password: `admin`## How to Run Locally
Follow these steps to clone and run the **Travelo** project locally:
### Clone the Repository
```bash
git clone https://github.com/Jamal-SaadEddin/Travelo.git
```### Navigate to the Project Directory
```bash
cd Travelo
```### Install Dependencies
```bash
npm install
```### Start the Development Server
```bash
npm run dev
```Once the server starts, the application will be available at `http://localhost:5173`.
## Testing Storybook
The **Storybook** design system for **Travelo** allows you to visualize and interact with individual UI components in isolation.
### Running Storybook
```bash
npm run storybook
```Storybook will be available at `http://localhost:6006`.
## Authors
👨💻 **Jamal SaadEddin**
- [**GitHub**](https://github.com/Jamal-SaadEddin)
- [**LinkedIn**](https://www.linkedin.com/in/jamalsaadeddin)## Acknowledgements
- This project is the final project of the [Foothill Solutions](https://www.foothillsolutions.com/) internship program.
---
## License
This project is licensed under the [MIT License](https://choosealicense.com/licenses/mit/). Feel free to use it for your own projects!