Skip to content

A modern, responsive, high-performance flight search frontend built with Vite + React + TypeScript

Notifications You must be signed in to change notification settings

evanigwilo/flight-search

Repository files navigation

Flight Search Engine

React TailwindCSS TypeScript

Description

A modern, responsive, high-performance flight search frontend built with Vite + React + TypeScript, featuring:

  • Real-time filtering
  • Price histogram and trend charts
  • Virtualized flight lists
  • Mobile-first design with sticky search and collapsible filters
  • Amadeus API integration (Test environment)

You can check the Live Demo.

Features

  • Flight Search: Origin, Destination, and Date inputs
  • Amadeus API Integration (Test environment)
  • Complex Filters: Stops, Airlines, Price, Duration
  • Virtualized Flight List using react-window
  • Price Insights: Histogram and trend charts using recharts
  • Mobile-first UI: Sticky search bar, collapsible filters
  • Selected Flight Panel: Highlights cheapest, fastest, and best-value flights
  • Clean Architecture: Reusable components, stores, and thin separation of concerns

Requirements

Run The Project Locally

  1. Clone the repository
# Clone the repo
$ git clone https://github.com/evanigwilo/flight-search.git

# Change to the project directory
$ cd flight-search
  1. Install dependencies
yarn install
  1. Set up environment variables

Create a .env file in the root:

VITE_AMADEUS_CLIENT_ID=your_client_id
VITE_AMADEUS_CLIENT_SECRET=your_client_secret
  1. Run the project locally
yarn dev

Open http://localhost:3000 in your browser.

Tech Stack

  • Frontend: React, TypeScript, Tailwind CSS
  • Build Tool: Vite
  • Charts & Visualization: Recharts
  • Virtualization: react-window
  • State Management: Custom hooks + stores

References