Flight search

A flight search product for a UK travel startup. We joined their team under NDA for the push to launch and took on work across the whole stack: the cloud it runs on, the fare searches behind every result, the traveller's wallet, the filters and the AI assistant.

Industry
Travel
Client
A UK travel startup, under NDA
Our role
Part of the client's team
When
2026, before launch

A launch that needed more hands.

The product had a small team and a launch date. Beyond the features, it needed a platform to stand on: a database, a cache, and a way to ship every change to staging and production.

They brought us in for the three weeks before launch, into a codebase already in motion, and our work ran from the database and the deploys to the screens travellers use.

What we built.

The platform on AWS

The Postgres database, a Redis cache over TLS, and deploys that build a Docker image into ECR and roll it out to Elastic Beanstalk, for staging and for production, with the front end on Amplify.

The fare searches

On the backend we connected the two fare searches every result depends on, from the provider call to the rows a traveller sees.

The traveller's wallet

A wallet for loyalty balances, membership numbers and airline vouchers, front to back: changes appear the instant they are made and roll back if the server says no, vouchers warn before they expire, and every endpoint only ever touches the traveller's own wallet.

Filters and the AI assistant

Filters live in the URL, so a search can be reloaded or shared. The AI assistant turns a plain request, typed or spoken, into those filters, and we made it handle follow-ups: a short reply like “second of June” now edits the search already on screen instead of starting a new one. It also stays on topic. Ask it anything outside travel and the product and it politely declines.

What it runs on

NestJS and TypeORM on Postgres with Redis, Next.js and React on the front, and an OpenAI assistant for filters. On AWS: Docker images in ECR, the API on Elastic Beanstalk, the front on Amplify, deployed by GitHub Actions.

From the database to the search box.