Skip to content

naviqore/public-transit-viewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

272 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Public Transit Viewer

Web frontend for the Naviqore public transit routing engine.

Features

  • Stop & Schedule Explorer: Browse stops, view departures and route details on an interactive map.
  • Connection Routing: Query point-to-point transit connections with detailed leg-by-leg results.
  • Isoline Map: Visualise reachability areas by travel time or number of transfers from a given stop.
  • System Monitor & Benchmark: Monitor backend health and benchmark routing performance.
  • Mock Data Mode: Explore the app without a backend using built-in Swiss transit sample data.

Running Locally

  1. Clone the repository:

    git clone https://github.com/naviqore/public-transit-viewer.git
    cd public-transit-viewer
  2. Install dependencies and start the dev server:

    npm install
    npm run dev
  3. Run the full quality gate:

    npm run ci

Agent-First Development Workflow

This repository follows a story-first workflow for all intentional changes.

  1. Create a story (feature, bugfix, test, etc.):
#file:new-story.prompt.md <what you want to change>
  1. Review and approve the generated story in docs/stories/.

  2. Let the agent implement the story:

#file:implement-existing-story.prompt.md <story-id>
  1. Review the implementation and confirm; the agent commits and closes the story.

Configuration

Environment variables (prefix VITE_ as required by Vite):

Variable Default Description
VITE_API_BASE_URL http://localhost:8080 Naviqore backend URL. When set, mock-data toggle is hidden.
VITE_ENABLE_MOCK_DATA false Start in mock-data mode automatically.
VITE_DISABLE_BENCHMARK false Hide the Benchmark tab (recommended for public deployments).

Deployment

Docker

docker run -p 80:80 \
  -e VITE_API_BASE_URL=https://api.your-naviqore-instance.com \
  -e VITE_DISABLE_BENCHMARK=true \
  ghcr.io/naviqore/public-transit-viewer:latest

GitHub Pages

A live demo with mock data is deployed automatically on every release to GitHub Pages.

Deployment workflow behavior:

  • Release-driven deploy: runs when a release is published.
  • Manual deploy (workflow_dispatch): intentionally kept for first-time bootstrap, retries, and backfills.

Repository prerequisite:

  • GitHub Pages must be enabled in repository settings with Source set to GitHub Actions before deployments can succeed.
  • If Pages is not enabled, the deploy workflow fails early with a direct remediation message.

Release Please changelog note:

  • CHANGELOG.md is generated by Release Please and excluded from Prettier checks to keep the quality gate strict and deterministic for repository-maintained source/config files.

Contributing

Contributions are welcome! Please open an issue or pull request on GitHub.

License

This project is licensed under the MIT license. See the LICENSE file for details.

About

Web frontend for the Naviqore public transit service and routing engine.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages