Skip to content

Design: make nearby map/list experience communicate loading, permission, and results clearly #20

Description

@github-world192

Problem

The nearby-stops experience currently mixes location permission, loading, and results states. A rider can see a permission message before the app has actually finished requesting location, which makes the screen feel broken or accusatory.

Product design direction

Design this as a small state machine:

  • Loading: show a neutral progress state, e.g. 取得位置中...
  • Permission denied: explain the action needed and provide a clear return path
  • Permission granted with results: show nearby stops with distance and a clear primary action
  • Permission granted with no results: explain that no stops were found within the current radius
  • Error: provide retry and fallback navigation

Acceptance criteria

  • Loading state does not show permission-denied copy.
  • Denied, error, empty, and success states have distinct copy and controls.
  • Nearby stop rows make the tap target and destination obvious.
  • The screen works on small mobile widths without text overlap.
  • Visual hierarchy prioritizes stop name, then distance, then secondary metadata.

Senior design advice

Location-based transit products must earn trust quickly. Use plain, situational language and avoid showing failure copy until the app knows a failure happened.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions