Skip to content
available for projects000%
All projects
PRJ-05SYSTEM CASELiveProduct · Travel planning

Lumoria

Contextual travel planning system

ReactSupabase

A travel product that starts from where the user actually stays and combines interests, time, mobility and weather context.

Status
Live
Type
Product · Travel planning
Role
Co-product development · Systems and technical architecture
Platforms
Web
CTX-01

Context

Generic city lists give everyone the same overview. In real trips, origin, duration, walking preference and weather directly change route quality.

PRB-01

Problem

Several variables had to become one route decision without exposing a complex planning dashboard to the user.

ROL-01

My role

  • Co-product development
  • Systems and technical architecture
SOL-01

Solution

We treat hotel/location origin as fixed context and combine interests, duration, mobility preference and weather into one route context.

BLD-01

What was built

  • Location / hotel-based route origin
  • Interest and duration context
  • Walking preference and weather awareness
  • Discovery memory
  • Form validation and responsive planning flow
ARC-01

System architecture

Route context
  1. Hotel / Origin
  2. Interests
  3. Duration
  4. Mobility
  5. Weather
  6. Route Context
  7. Itinerary
STK-01

Technical stack

Frontend

React 19 · TypeScript · TanStack Start · TanStack Router · TanStack Query · Tailwind CSS 4 · Radix UI · React Hook Form

Backend / Data

Supabase

Validation

Zod

Runtime

Vite · Nitro

DEC-01

Important engineering decisions

  • Build route context from the real origin rather than the city center
  • Expose the multivariable system as one decision flow
CODE-01

Code / architecture excerpts

Route contextTS
01const routeContext = {
02 origin: hotel.location,
03 interests: user.interests,
04 duration: trip.duration,
05 mobility: user.walkingPreference,
06 weather: forecast,
07};
08
09const itinerary = buildRoute(routeContext);
OUT-01

Result / current state

Lumoria is live with contextual routes, discovery memory and weather awareness combined into one travel flow.

LRN-01

Engineering takeaways

  • In planning products, good defaults are more valuable than more options.
  • Location context should be the first input to recommendation, not a final filter.

OUT-LIVE / Visit product

Lumoria

Visit product

Next project

PRJ-06Good Move

AVAILABLE FOR PROJECTS · PRODUCT & SYSTEMS ARCHITECT · TAKEOVER / STABILIZE / OPERATE · WEB · ANDROID · WINDOWS · AHMET CANAL

Contact

Has your product grown faster than its system?

Send the current situation, your biggest blocker and the outcome you want. We will clarify scope together.

Availability

Open to new consulting and project-based work.