Inspiration
Have you ever travelled somewhere and only afterward discovered the one thing you should have tasted, seen, or understood while you were there?
Travel planning starts with saved posts, screenshots, bookings, and half-written notes. Most tools turn that beautiful mess into an even longer checklist. DayWeave begins with a different principle:
Their time is precious, but it should never feel rushed. DayWeave protects the moments they saved for.
I wanted to help travellers experience a place meaningfully, not simply complete more stops.
What it does
DayWeave turns a messy travel wishlist into one calm, actionable day.
Its planning system, AURORA Adaptive User-led Route Optimization & Recommendation Assistant, separates three responsibilities:
- Understand what matters. DayWeave structures pasted notes and, when OpenAI is connected, screenshots and messier language, into places, priorities, bookings, and wishes such as “Victoria Peak near sunset” or “shopping last.”
- Verify what is possible. A deterministic optimizer checks opening windows, travel estimates, visit durations, reservations, walking comfort, pace, and timing constraints. It protects the maximum feasible must-visits and honestly explains what should wait for another day.
- Keep the traveller in control. Priorities are confirmed before planning. When the day changes, DayWeave replans only what remains and presents explicit choices instead of silently removing a stop.
The live experience answers one question at a time: where to go next, why it matters, and what changed. If someone is delayed, or simply loves a place and wants another 30 minutes, DayWeave treats that as real life, not failure.
Don’t Miss Here provides the local insight travellers often discover too late: the signature dish, detail, or experience that makes a stop worth remembering. Recommendations include provenance, freshness, confidence, and conflicting evidence. Weak evidence may inform the traveller, but it cannot silently change their route.
How I built it
I built DayWeave as a mobile-first TypeScript application using React, Next.js, Vinext, Vite, and Cloudflare Workers.
OpenAI sits at the interpretation boundary. The OpenAI Responses API transforms unstructured text and screenshots into schema-shaped intent. Every result passes through Zod validation and traveller confirmation before planning. Live requests disable storage, and screenshots are not retained.
AURORA’s route selection is deliberately not generated by a language model. For up to ten places, it runs an exact, deterministic prize-collecting subset and permutation search with Pareto and branch pruning. Identical inputs produce the same plan, metrics, and structured reason codes.
I also created explicit adapters for extraction, routing, place data, and experience evidence. This lets the complete Hong Kong demonstration work without an API key or external routing service. The offline path uses the same schemas, optimizer, and replanning engine as the AI-assisted path—it is not a prerecorded result.
Challenges I faced
The hardest challenge was deciding what AI should not control. A model can interpret “near sunset,” but it should not invent travel times, move a reservation, or claim an impossible route works. Separating probabilistic interpretation from deterministic verification made the product more trustworthy.
Live replanning was another challenge. Completed moments must remain fixed while delays, breaks, skipped stops, and longer visits affect only the unvisited day. Every repair also needed to explain its trade-off without making the traveller feel they had failed.
Finally, “what not to miss” required an evidence policy, not just recommendation copy. I designed provenance, recurrence, freshness, confidence, and consent gates so an interesting suggestion never becomes an unverified scheduling fact.
Accomplishments I’m proud of
- A Hong Kong journey that truthfully fits 7 of 9 wishlist places while protecting all feasible must-visits, a reservation, sunset, walking comfort, and shopping-last intent.
- Live recovery choices that preserve completed stops and require traveller approval for meaningful trade-offs.
- A “Stay, this is what the trip is for” flow that treats enjoying a place longer as a feature.
- Evidence-aware Don’t Miss Here briefings that reveal signature experiences without pretending popularity is certainty.
- A working no-key text reader and complete offline demonstration.
- A responsive, keyboard-accessible experience with a distinctive travel-thread companion named Wivi.
- Deterministic extraction, optimization, replanning, evidence, and rendered-journey tests.
What I learned
The best travel plan is not the one with the most stops. It is the one that minimizes regret while leaving enough room to be present.
I learned that AI becomes more useful when its authority is intentionally limited: the model understands messy human meaning, deterministic code verifies the day, and the traveller authorizes every important decision.
Most importantly, adapting a schedule should never feel like being corrected. Good travel technology protects memory-making, not checklist completion.
What’s next
Next, I want to expand beyond the Hong Kong prototype with live routing, broader place resolution, and permissioned evidence sources for destination-defining food and experiences.
I also plan to add collaborative wishlists, deeper personalization, accessibility preferences, and an installable mobile experience.
The long-term vision is simple: wherever someone goes, DayWeave helps them protect what they travelled for—and recognize what makes being there special.
Built With
- cloudflare
- framer
- gpt-5.6
- motion
- node.js
- playwright
- typescript
- vinext
- vite
- vitest
- workers
- wrangler
- zod
Log in or sign up for Devpost to join the conversation.