Skip to content
/ brokr Public

Brokr is a modern Angular-based travel booking platform that allows users to search, filter, and book attractions, cars, flights, and stays. The application features a clean UI, advanced filtering, and modular architecture for easy scalability and maintenance.

Notifications You must be signed in to change notification settings

0x0Zeus/brokr

Repository files navigation

Brokr: Unified Travel Booking Platform

Brokr Home Screenshot

View Figma UI/UX Design


Overview

Brokr is a comprehensive web application for searching and booking hotels, cars, flights, and attractions—drawing inspiration from leading travel platforms. The project features a modern, responsive UI, real-time search, advanced filtering, and interactive maps, providing a seamless travel booking experience.


Features

  • Unified search and booking for hotels, cars, flights, and attractions
  • Real-time search with elastic search and debounce
  • Advanced filtering and sorting options
  • Interactive maps (TomTom integration)
  • User reviews and ratings
  • Responsive, modern UI (Angular, NgPrime, Tailwind CSS)
  • CI/CD with GitHub Actions
  • Deployed on Vercel

Demo


Tech Stack

  • Angular – Frontend framework
  • RxJS – Reactive programming for async operations
  • NgRx – State management
  • NgPrime – UI component library
  • Tailwind CSS – Utility-first CSS framework
  • TomTom Maps – Map integration
  • Booking.com API – Real-world data for hotels, cars, flights, and attractions
  • ESLint, Prettier, Husky – Code quality and formatting

Project Structure

  • src/app/components/ – Reusable UI components (cars, stays, flights, attractions, etc.)
  • src/app/pages/ – Main application pages
  • src/app/core/ – Core modules, services, interceptors
  • src/app/shared/ – Shared utilities, models, interfaces
  • src/app/store/ – State management (NgRx)
  • src/assets/ – Static assets (images, icons, fonts)

Pages Overview

  • Landing: Introduction to the application and its capabilities.
  • Cars: Search and book rental cars by city, date, and time. View results with pagination and map integration. Navigate to detailed car information.
  • Car Details: Detailed information about a selected car and dealer, including photos and user reviews.
  • Stays: Search and book hotels and homes by city and date. Filter by guests, rooms, price, and sort by popularity, distance, rating, or price. Pagination and map integration included.
  • Stay Details: Detailed information about a selected hotel or home, with room photos and paginated user reviews.
  • Attractions: Search and book tickets for attractions and activities by city. Sort by trend, rating, or price. Pagination and detailed attraction information.
  • Attraction Details: Detailed information about a selected attraction, with photos and user reviews.
  • Flights: Search and book flights by departure/arrival city and date. Filter by seat count and class. Sort by duration or price. Pagination and detailed flight information.
  • Flight Details: Detailed information about a selected flight and carrier.
  • Not Found: Custom 404 page for undefined routes.

Getting Started

Prerequisites

  • Node.js (v14 or higher recommended)
  • npm

Installation

npm install

Running Locally

npm start

Lint & Format

npm run lint
npm run format

Build

npm run build

License

This project is for educational and demonstration purposes only. Not for commercial use.

About

Brokr is a modern Angular-based travel booking platform that allows users to search, filter, and book attractions, cars, flights, and stays. The application features a clean UI, advanced filtering, and modular architecture for easy scalability and maintenance.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published