Installation

Prerequisites

Requirements

Download Data

Glove needs GTFS transit data to operate. The download script reads config.yaml for data URLs.

# Download everything (GTFS + OSM + BAN addresses)
bin/download.sh all

# Or download individually
bin/download.sh gtfs     # GTFS transit schedules
bin/download.sh osm      # OpenStreetMap data (for Valhalla)
bin/download.sh ban      # BAN French addresses (for autocomplete)

Note

By default, this downloads data for Ile-de-France (Paris region). You can change the data URLs in config.yaml to use GTFS feeds from other regions.

Start Valhalla (Optional)

Valhalla provides walking, cycling, and driving directions. Without it, only public transit routing is available.

bin/valhalla.sh    # Pulls Docker image, builds tiles, starts on port 8002

This creates a Docker container named valhalla that builds routing tiles from the downloaded OSM data.

Run

Production Mode

bin/start.sh

This builds the Rust backend in release mode, builds the React frontend, and starts the server on port 8080.

Development Mode

bin/start.sh --dev

This starts:

  • Backend: cargo-watch for automatic recompilation on Rust file changes
  • Frontend: Vite dev server with HMR on port 3000

Manual Start

# Terminal 1 — Backend
cargo run --release

# Terminal 2 — Frontend
cd portal && npm install && npm run dev

Access