Installable PWA prototype

Jalan Jalan

A mobile-first Singapore PWA that turns a casual prompt into a budget-aware local exploration route.

9T1 Labs / PWAJalan Jalan
Jalan Jalan route planning chat interface
Jalan Jalan route plan shown on a phone at a Singapore cafe
Categories
PWA
Year
2026
Role
Creator

Plan a local afternoon from the way people actually ask.

Jalan Jalan turns a casual request about area, time, budget, category, and vibe into a small Singapore route with estimated orders, timing, walking distance, and saved favorites.

A guided planning mode sits beside the natural prompt for people who prefer predictable choices, use assistive technology, or are less comfortable typing in English.

Singapore cafe table with a phone displaying a walking route
The repository's route-planning hero places the product in a recognizably local setting.

A prompt becomes a route that can leave the app.

  1. Describe

    Enter a neighborhood, timing, budget, category, and preferred pace.

  2. Refine

    Use guided controls for walking, step-free preference, vegetarian options, or halal verification.

  3. Generate

    Build a route from the sample Singapore place dataset and client-side rules.

  4. Navigate

    Open the route in Google Maps or use the provided external search links.

  5. Keep

    Rename, reopen, copy, share, or delete a saved route in the browser.

A static PWA with a deliberately replaceable data boundary.

The current build needs no backend or provider key. Production mapping and place data are described as future adapters rather than simulated live services.

Input

  • Natural prompt
  • Guided controls
  • Comfort options
  • Validation

Planner

  • Client-side parsing
  • Sample place data
  • Budget estimates
  • Route ordering

Output

  • Route summary
  • Maps links
  • Saved routes
  • Native share or clipboard
Offline shell
The service worker caches the installable application shell and generated hero asset.
Provider choice
Google Maps URLs work without a key while a production adapter can later support Places and Routes APIs.

Every useful estimate is labelled as an estimate.

Every useful estimate is labelled as an estimate.
NeedCurrent implementationProduction requirement
PlacesSample Singapore datasetLive opening hours, ratings, photos, and place identifiers
RoutingEstimated order, timing, and walk distanceA licensed route optimization provider
ComfortVisible route preferences and remindersVerified accessibility and dietary data
TrendsCurated tags and compliant search linksApproved partner data with evidence and dates

Inclusive input changes the route, not only the settings screen.

Two planning styles

Natural language and guided controls reach the same planner without forcing one interaction mode.

Comfort-aware output

Less walking and a relaxed pace produce shorter plans, while step-free and dietary preferences stay visible for verification.

Installable utility

The manifest, icons, service worker, focus states, skip link, and reduced-motion behavior make the static prototype usable as a PWA.

The next useful layer is live local context.

Real place data

Opening hours, accessibility, ratings, and route timing need production mapping APIs.

Language and voice

Multi-language interface strings, voice input, and read-aloud summaries remain future work.

Street conditions

Crowds, weather, toilets, seating, and lift or escalator availability are not available in the current prototype.

Next: Just Message!