-
-
Rahul books Goa to Bengaluru and picks a few things he loves on the same screen. Nothing is saved until he confirms.
-
Customer care marks KS434 four hours late. Both Groundtime travellers on it get a new plan, and the board shows who changed it and when.
-
Aarav hasn't left for the airport yet, so he gets a beach visit and a vegetarian lunch nearby, and the exact time to head back.
-
Already inside the airport? The plan stays in the terminal: food past security and films that end before boarding.
-
Ask Groundtime anything about your trip. It answers from your plan and can read the answer out loud.
-
Crew see their duty days and a meal near the crew hotel that fits inside their rest.
Inspiration
Every time a flight is late, everyone on board gets the same thing: an SMS, maybe a meal voucher, and a few hours of sitting at the gate. But four hours is a lot of time. The person who loves A. R. Rahman and only eats vegetarian could have had a good lunch and seen something nice near the airport, if anyone had told them what was open, how far it was, and when they'd need to head back.
That's the gap Groundtime tries to fill. Not "things to do in Goa", but a plan for this person, for this delay, that actually gets them back in time.
What it does
- Booking with taste. When you book, you tap a few artists, films, series or books you like (looked up in Qloo's catalogue) and any dietary needs. Nothing is saved until you confirm the booking.
- Customer care records the delay. They search the flight board, mark the flight late with a reason, and every Groundtime passenger on that flight gets a new plan within seconds. A flight can only be marked late three times, and every change shows who made it and when.
- A plan that's been checked. Qloo picks places, food and films for your taste. Then Groundtime checks every one: open for the whole visit, right for your diet, ride time counted, and back at the terminal before you need to be there. If something doesn't pass, it's left out, and you can see why under "How this was checked".
- Where you are changes the plan. If you haven't left for the airport yet, you get an outing near it on your way in. If you're already inside, the plan stays in the terminal, because at Indian airports you can't walk back out of security without the airline and security clearing it. Your phone can check whether you're at the airport; only "at the airport" is saved, never your location.
- Ask Groundtime. Every role has an assistant you can type or talk to, and it reads answers aloud. It only answers about your trip and air travel, and every place or film it names has to come from what the tools returned.
- Four roles. Travellers, crew (a meal near the crew hotel that fits inside their rest), customer care (the board, the delays, every waiting passenger's plan, with dietary needs shown as met but never what they are) and admins (accounts and password resets).
How we built it
- Qloo Taste AI (Search and Insights) picks every place and film. Results are cached in DynamoDB for a day so the same delay doesn't call Qloo again and again.
- A small rules engine in Python does the checking: opening hours against the visit window, diet tags, ride times, and the gate deadline (gate close, a buffer and security time worked back from the new departure).
- One MCP server on Amazon Bedrock AgentCore Runtime holds every tool. Who can do what is decided inside the server from the caller's Cognito groups, not from anything they type.
- Amazon Nova runs the assistant. It only phrases answers; it never works out a time or picks a place. If it mentions a name that isn't in the tool results, we throw that answer away and show the checked summary instead.
- Amazon Polly reads the answers aloud in an Indian English voice.
- The web app is Next.js on AWS Amplify. It holds no keys: every call carries the signed-in user's own token. Everything is deployed with the AWS CDK.
Challenges we ran into
- Trusting the recommendations. A good taste match isn't enough if the place closes halfway through your visit or doesn't serve anything you can eat. Most of the work went into the checks that come after Qloo's pick.
- Getting the airport rules right. Once you're through security in India you can't just pop out for lunch, so the same delay needs a completely different plan depending on where you are. We also had to make that work for connecting passengers.
- Keeping the assistant honest. Language models like to be helpful and will happily invent a café. Making it answer only from tool results, and catching it when it doesn't, took a few rounds.
- Delays are messy. They get updated, corrected and cleared, so we limited how often a flight can be marked late and kept a history of every change.
Accomplishments that we're proud of
- Every stop in a plan is real, open when you get there, and gets you back in time. The times come from the engine, not the model.
- The same delay gives Aarav (still at his hotel), Sara (already at the gate) and Meher (connecting, eats Jain) three different plans that each make sense.
- Customer care can see that someone's dietary needs are met without ever seeing what they are.
What we learned
The recommendation is the easy part. Getting from "you'd like this" to "you can actually do this, now" took far more work, and it's what makes the plan useful. We also learned to keep the language model doing only what it's good at: talking.
What's next
- Live flight status instead of customer care entering the delay by hand.
- More airports and airlines, and more of the airport itself (lounges, quiet zones, shops).
- Push notifications when a delay changes your plan.
- Group plans, for families travelling together.
Testing instructions
The app: https://dev.d304ny0lbzoj7c.amplifyapp.com
All demo accounts use the same password: "QLOO@2026hack"
| Username | Who | Try |
|---|---|---|
tr1001.kapoor |
Aarav, traveller on KS434, not at the airport yet | Plan my time, then "I'm at the airport" and plan again |
tr1002.fernandes |
Sara, traveller already at the airport | The terminal-only plan |
tr1003.shah |
Meher, connecting in Bengaluru, eats Jain | A plan for the connection |
tr1004.das |
Rahul, no trip yet | Book a flight and pick what he loves |
neha.joshi |
Customer care | Search the board, record or clear a delay, see waiting passengers |
c1042.nair |
Crew | Duty days and a layover meal plan |
Tips:
- Times are India time. KS434 (Goa to Bengaluru) leaves at 16:00 every day. If no delay is showing, sign in as
neha.joshiand record one on KS434 for today. - Each flight can be marked late at most three times a day.
- Voice input works in Chrome and Edge; turn on the speaker icon in the assistant to hear answers.
Built With
- amazon-bedrock
- amazon-cognito
- amazon-dynamodb
- amazon-nova
- amazon-polly
- aws-amplify
- aws-cdk
- aws-ssm
- bedrock-agentcore
- mcp
- next.js
- python
- qloo
- react
- tailwindcss
- typescript
Log in or sign up for Devpost to join the conversation.