← Back to all projects
TravelAI ProductDesign → Front-end

Tacy AI Ecosystem

Turning Thomas Cook’s static tour packages into an AI-powered, conversational travel-planning experience — live on thomascook.in and used by thousands of travellers every day.

RoleLead UX/UI Designer — product, interaction & front-end
ClientThomas Cook India, via Atirath Technologies
TimelineLaunched January 2025 — live in production
ToolsFigma, FigJam, Figma Make, React, Notion
Tacy chat conversation beside a dynamic package pane with destinations, budget and itinerary details
FIG 01Tacy running on the Thomas Cook website — the conversation is the canvas, with the package pane opening beside it.
Thousandsof travellers plan trips with Tacy every day on thomascook.in
5core workflows designed end to end — discovery through to booking
1conversational canvas replacing marketing pages, PDFs and call centres
Jan 2025shipped to production, and still running today

Starting point

the legacy experience

Thomas Cook’s digital presence was built around static, pre-defined packages and traditional booking flows. Planning a single trip meant jumping between three disconnected places:

01

Marketing pages

Destination research lived in brochure-style pages with no memory of what you had already looked at.

02

PDF itineraries

Package detail arrived as a document — impossible to question, impossible to change.

03

Forms and call centres

Any modification or booking meant leaving the site entirely and starting the conversation over.

There was no single, continuous experience where a traveller could explore, customise and book a trip without starting over each time they changed their mind.

The product

five pillars, one conversation

Internally we called it TravBridge: a generative-AI travel assistant that helps Thomas Cook customers plan a holiday from scratch or from a curated package, entirely inside a conversation. I grouped the product into five pillars, each with its own triggers, UI states and chatbot tone.

Destination exploration

A chat-first way to research where to go — season, attractions, visa conditions and typical budget, returned as scannable cards.

Dynamic packages

A fully customisable itinerary that builds itself alongside the conversation in a persistent right-hand pane.

Fixed packages

Pre-designed Thomas Cook itineraries surfaced from stated preferences, bookable in a few clicks.

My Chats

Every conversation stored, filterable and resumable — trip planning happens over weeks, not minutes.

Packages hub

Saved and booked packages in one place, re-openable, editable and shareable with co-travellers.

The challenge

four hard problems

How do you let someone talk to a chatbot like a travel agent and customise a trip endlessly, while keeping the structure, reliability and compliance of a Thomas Cook package tour?

A conversation that still collects everything

Designing a dialogue that feels natural while reliably capturing destinations, dates, duration, travellers, budget and preferences.

Full control and zero effort

Balancing deeply customisable dynamic packages against one-tap fixed packages, without splitting the product in two.

Continuity across weeks

Trips are planned over days, not minutes. Pausing had to cost nothing — no lost context, no lost packages.

Itineraries the AI can’t break

Encoding arrival, departure, accommodation, activity and transport logic so generated schedules stay possible and bookable.

Design goals

what the product had to be
01

AI-native, conversation-first

Make the chatbot the primary interface, not an add-on bolted onto the side of a website.

02

One continuous journey

From inspiration to customisation to booking, with no context lost at any handover.

03

Two planning modes

Effortless curated packages and deep customisation, living inside the same interface.

04

Safe, realistic itineraries

Encoded rules so the AI respects travel constraints and Thomas Cook package standards.

05

A system that outlives the project

Flows and components Thomas Cook can reuse for future AI features — visa rules, forex and beyond.

Key workflows

five flows, one thread
01

Explore destinations via chat

  • Users start from the AI Chat Helper or a “New Chat” entry point — no landing page in between.
  • The chatbot asks about budget, travel style and interests: adventure, nightlife, off-beat, nature.
  • It returns short, scannable destination cards — best season, key attractions, visa conditions, typical budget.
  • Follow-up questions refine the recommendations in place instead of pushing users to a new page.

Goal — replace scattered research with one focused, conversational flow.

02

Create dynamic, personalised packages

  • The heart of the product. The chatbot first asks whether you want to build from scratch or browse Thomas Cook packages.
  • For a dynamic package, a persistent right-hand pane opens with an editable itinerary shell.
  • Customers edit the key properties of that package directly in the pane while the conversation continues alongside.
  • Everything the AI generates is bound to itinerary rules — arrival and departure blocks, accommodation per night, activities, food and transport.

Goal — give travellers full control of the itinerary while the AI holds structure, accuracy and bookability.

03

Thomas Cook–inspired fixed packages

  • The chatbot collects the customer’s key preferences before surfacing anything at all.
  • Pre-designed packages appear with duration, key cities, trip theme, inclusions, exclusions, visa conditions and terms.
  • These itineraries can’t be modified — the trade is flexibility for speed, and it is made explicit.
  • Booking completes in a few clicks without ever leaving the conversation.

Goal — offer effortless, ready-to-book packages for people who prefer a fast decision to a detailed one.

04

My Chats — continuity in planning

  • Trip planning happens over days or weeks, so every conversation is stored in a My Chats tab.
  • Filters follow patterns travellers already know from Airbnb — destination, date, status.
  • Reopening a chat restores the full message history and every package discussed in that thread.
  • The chatbot can resurface older packages, or suggest new ones if preferences have shifted since.

Goal — let users return to any trip plan at any time without losing context, progress or packages.

05

Packages hub — saved, booked and shared

  • A dedicated Packages tab becomes the memory of the whole ecosystem.
  • It holds saved and booked packages, dynamic and fixed alike, at the moment the customer needs them.
  • Any package can be re-opened and kept editing, or reviewed once more before booking.
  • Saved packages can be shared with co-travellers, turning planning into a group decision rather than a solo one.

Goal — create one central memory where every package can be managed, re-opened and shared.

Itinerary model & rules

the guardrails

To stop the AI generating impossible trips, I defined a block-based itinerary system. Every day is built from blocks, and each block type carries its own constraints.

ArrivalFirst block of day one. Always present, never removable — the trip has to start somewhere real.
DepartureLast block of the final day, anchoring the end of the itinerary against the return journey.
AccommodationCheck-in, check-out and every overnight stay in between, one per night with no gaps.
ActivityAttractions, tours and experiences, slotted around the fixed points rather than over them.
FoodRestaurants and meal stops, sequenced against travel time so the day stays physically possible.
TransportInter-city and inter-country travel, counted with the hours it actually consumes.

The model keeps the interface clean while handing engineering a clear schema for anything the AI generates.

Mobile view of a dynamic package itinerary with flight and hotel blocks, each editable or removable
FIG 02A dynamic package itinerary generated inside those rules — editable, but never impossible.

Visual design system

aligned to Thomas Cook

Thomas Cook already owned a colour story. My job was to build an AI-native UI layer on top of it that felt like the same company, not a bolt-on.

Voyage Blue#0056B3Trust, reliability and forward momentum. As the primary, it anchors the interface in Thomas Cook’s legacy of dependable service.
Sunshine Gold#FFC107Energy, warmth and the moments of delight. Used as the accent on key actions and states, guiding without shouting.
Cloud Mist#D9E6F2A soft neutral for panels and layered surfaces, keeping the conversation and itinerary easy to scan.
AaPoppins

Bold — section titles and package names, where hierarchy has to be unmistakable.

Regular — body and chat text, tuned for long conversational threads rather than short labels.

Desktop-first responsive grid

Three regions that hold their meaning at every breakpoint — the conversation never loses the centre.

LeftNavigation, plus quick access to My Chats and Packages.
CentreThe chat conversation as the primary canvas.
RightContextual pane for packages, filters and itinerary editing.

From flows to UI

how it got made
01

Identity & design brief

Formalised the problem space, the goals and the competitive landscape — Ask Layla, PickYourTrail, Airbnb Experiences.

02

Workflow mapping

Defined the core workflows with their triggers, states and success criteria: exploration, dynamic packages, fixed packages, My Chats, Packages and sharing.

03

Itinerary rules & edge cases

Codified exactly what the AI can and cannot change inside an itinerary, before a single screen was drawn.

04

Wireframes & conversation flows

Designed the message sequences — how the bot collects preferences, announces it has everything it needs, then shows packages instead of over-explaining.

05

High-fidelity UI & handoff

Built componentised Figma layouts for chat, panes, filters and package cards, aligned to Atirath’s React stack.

From design to front-end

with Figma Make

Once the high-fidelity screens were locked, I used Figma Make to translate the componentised Tacy designs into a working React front-end — then hand-validated, debugged and refined the generated code until the built interface matched the intended design.

Tacy destination selection with pre-curated Bali itineraries, as designed in Figma
FIG 03High-fidelity design — the final Tacy screen as designed in Figma, handed straight into the build.
Figma Make building the Tacy mobile experience from the Figma definition
FIG 04Figma Make generating a React front-end directly from that design.
The Figma Make workspace with the validated project guidelines and generated React source
FIG 05The generated code after hand-validation, running as the live React build.

Learnings & impact

what the project taught me
01

Designing for conversations, not screens

Shifting from page-based navigation to dialogue-driven flows meant treating every question, response and confirmation as a UX artefact — not just the container around it.

02

Guardrails make AI useful

The itinerary rules and non-deletable structural blocks turned “AI magic” into reliable, bookable trips instead of plausible-sounding suggestions.

03

Continuity equals trust

My Chats and Packages turned the assistant from a one-off gimmick into a long-term planning companion. The system remembers you — and that memory is the product.

04

Bridging UX and front-end

Because the system was component-first, I could take the high-fidelity screens into React with Figma Make and leave behind a reusable front-end that future Thomas Cook and Atirath AI products can build on.