Config Tab — settings, services, charts, offline
VoyagePilot's central settings hub: language and night mode, connections to services (AI, onboard instruments, AIS, weather APIs), offline marine charts, and offline-mode preparation.
Where to find it
Sidebar › Conf (gear icon, at the very bottom of the tab list).
The "Conf" tab gathers everything related to app setup. It is split into four sub-tabs shown at the top of the panel: General, Services, Charts, and Offline. All your data stays stored locally in the browser ("All data stored locally in your browser") — there is no central server.
Hierarchy
Conf
├── General
│ ├── Language (English / Français)
│ ├── Night Mode (Active / Off + Brightness slider)
│ ├── Engine & Fuel (consumption L/h, keel depth m)
│ ├── Shelter Route (weather monitoring interval)
│ ├── Save / Reset
│ └── VoyagePilot version
├── Services
│ ├── AI → AI / LLM · Exa AI · SearXNG
│ ├── Boat → Signal K (+ network discovery) · PyPilot · AIS · NMEA / Axiom
│ ├── APIs → Overpass · Tidal (UKHO) · OpenWeatherMap · Windy · WorldTides
│ └── Diagnostics → background services status + port conflicts (desktop only)
├── Charts
│ ├── SHOM (France chart API key)
│ └── Offline Charts (MBTiles)
│ ├── Library (imported library)
│ ├── Catalog (downloadable catalog)
│ ├── Download (tiles along the route)
│ └── ENC (vector S-57 charts)
└── Offline
├── Coverage validation
├── Storage / cache statistics
├── Prepare offline mode
├── Export / Import backup
└── Clear all caches
General
Language
What it does: switches the entire interface between English and French. How to use it: 1. Click English or Français. 2. The change is immediate and remembered for next launches. Options & settings:
| Button | Effect |
|---|---|
| English | Interface in English |
| Français | Interface in French |
Tips & limits: the choice also applies to localized data (routes, destinations, Sea-Seek descriptions). The active button is highlighted in gold.
Night Mode
What it does: applies a dimmed red tint over the whole screen to preserve night vision at the helm. How to use it: 1. Click the Off button: it switches to Active (red). 2. A Brightness slider then appears. 3. Set brightness between 10% and 80% depending on how dark the cabin is. Options & settings:
| Setting | Range | Effect |
|---|---|---|
| Active / Off button | — | Turns the night tint on or off |
| Brightness | 10% to 80% (5% steps) | Dims the screen; default 45% |
Tips & limits: the slider only appears while night mode is active. Turn it on at dusk to avoid being dazzled.
Engine & Fuel
What it does: records the boat's motoring fuel consumption and draft, used for fuel estimates and the instruments' depth alarm. How to use it: 1. Enter motoring consumption in Fuel consumption (L/h). 2. Enter the draft in Keel depth (m). 3. Click Save at the bottom of the sub-tab. Options & settings:
| Field | Example | Effect |
|---|---|---|
| Fuel consumption (L/h) | 4.5 | Hourly motoring consumption, feeds fuel-range calculations |
| Keel depth (m) | 1.8 | Draft, feeds the depth alarm on the instruments |
Tips & limits: both fields are empty by default. The draft drives the depth alarm; enter it accurately (keel included).
Shelter Route
What it does: sets how often the app checks weather alerts along your active route for the shelter/bail-out route feature. How to use it: 1. Enter a number of minutes in Weather monitoring interval (min). 2. The value is saved automatically as you type. Options & settings:
| Field | Range | Effect |
|---|---|---|
| Weather monitoring interval (min) | 5 to 360 (5-min steps) | How often weather alerts are checked on the active route; default 60 min |
Tips & limits: a short interval refreshes more often but uses more connectivity. See the Shelter Route tab for full usage.
Save / Reset
What it does: saves all text/number fields in the panel, or restores them to defaults. How to use it: 1. Click Save: the button turns green and shows Saved! for 2 seconds. 2. The arrow button next to it (Reset to default) restores all settings fields to factory values. Options & settings: - Save — stores language, endpoints, and API keys you entered. - Reset (circular arrow) — restores all default values (re-confirm with Save if needed).
Tips & limits: night mode, language, and Shelter Route are saved instantly; the other fields (engine, services, keys) are only stored when you click Save.
Version
What it does: shows the installed version number, e.g. VoyagePilot v0.1.20, followed by the reminder that all data is local.
Services
The Services sub-tab has its own four sections at the top: AI, Boat, APIs, and Diagnostics. Each field has an arrow button (Reset to default) that restores its default value. A shared Save button at the bottom stores everything.
AI — AI & search
What it does: configures the language engine (LLM) powering the navigation agent and route analysis, plus the web-search services that enrich POIs. How to use it: 1. Fill in the API Endpoint and Model of your OpenAI-compatible LLM server. 2. Optionally add an Exa key and/or a SearXNG instance for enrichment. 3. Click Save. Options & settings:
| Section | Field | Role |
|---|---|---|
| AI / LLM | API Endpoint | OpenAI-compatible endpoint for route analysis (http://host:port/v1) |
| AI / LLM | Model | Model name served by the API (e.g. qwen3.5-9b) |
| Exa AI (POI Enrichment) | Exa API Key | AI web search with images to enrich POIs; falls back to SearXNG if empty |
| SearXNG (AI Enrichment) | SearXNG Instance URL | Free metasearch engine with no key, grounds AI enrichment with web data |
Tips & limits: the LLM must expose an OpenAI-compatible API. Exa needs a key (dashboard.exa.ai); without it, SearXNG (self-hosted or a public instance) takes over with no key. See AI Agent.
Boat — onboard instruments
What it does: links VoyagePilot to the boat's equipment: Signal K server (instrument data), PyPilot autopilot, AIS traffic, and an NMEA bridge to an Axiom. How to use it: 1. Enter your Signal K Server address, or use auto-discovery (see below). 2. If needed, fill in PyPilot Server, the AIS settings, and the NMEA Bridge URL. 3. Click Save. Options & settings:
| Section | Field | Role |
|---|---|---|
| Signal K (Boat Instruments) | Signal K Server | Onboard Signal K server for live data: GPS, wind, depth, batteries (http://192.168.1.100:3000) |
| PyPilot (Open-Source Autopilot) | PyPilot Server | PyPilot autopilot control: PID tuning, compass calibration, servo monitoring (ws://192.168.1.100:23322) |
| AIS Vessel Traffic | AISStream.io API Key (real-time) | Free aisstream.io key for real-time AIS via WebSocket, with vessel trails |
| AIS Vessel Traffic | AIS API Endpoint (polling fallback) | JSON vessel-position API, used when no WebSocket key is set |
| NMEA / Raymarine Axiom | NMEA Bridge URL | Local bridge server to send routes to an Axiom (http://localhost:3001) |
Signal K server discovery (Discovered Servers): below the Signal K field, the app scans the local network and lists found servers. A Refresh button re-runs the scan. If nothing is found, install hints are offered (npm, OpenPlotter Raspberry Pi image, online demo server). The Connect button auto-fills the field with the chosen server's address.
Tips & limits: all these settings are optional. Signal K and PyPilot assume an onboard network (boat Wi-Fi). The NMEA bridge requires running the nmeaBridge script on the server side. Changes to these fields take effect without reloading the app.
APIs — external weather & port services
What it does: configures optional external APIs (most free with quotas) to enrich ports, tidal currents, UV index, and webcams. How to use it: 1. Paste your keys or endpoints in the relevant fields. 2. Click Save. Options & settings:
| Section | Field | Role |
|---|---|---|
| Ports & Harbours (Overpass) | Overpass API endpoint | Overpass API for port data (default overpass-api.de) |
| Tidal / Ocean Currents | UKHO Admiralty API Key | Admiralty key for UK tidal streams |
| OpenWeatherMap (UV Index) | API Key | UV index; free tier 1000 calls/day (openweathermap.org) |
| Windy Webcams | Windy API Key | Windy webcams; limited free tier (api.windy.com) |
| WorldTides (Global Tides) | WorldTides API Key | Global tides; free tier (worldtides.info) |
Tips & limits: Overpass is preconfigured; if it's overloaded, switch to the overpass.kumi.systems mirror. The other keys are optional: without them, the matching features simply stay unavailable.
Diagnostics
What it does: shows real-time status of background services (Python, Node, binaries) and detects port conflicts — handy when the LLM, the RAG, or the tile server won't start. How to use it: 1. The panel auto-refreshes every 5 seconds (Refresh button to force it). 2. For each service: Start, Stop, or Restart. 3. If a port is held by a foreign process, a Kill button sends SIGTERM (confirmation required). Options & settings:
| Element | Role |
|---|---|
| Status (Running / Starting / Stopped / Error / Unknown) | Current service status |
| Ports / Active | Declared ports and the port actually in use |
| Start / Stop / Restart | Service lifecycle control |
| Conflict banner | Flags two VoyagePilot services claiming the same port |
| Other listeners (not VoyagePilot) | Lists third-party processes holding an expected port |
| Kill | Kills the blocking process (SIGTERM) after confirmation |
Tips & limits: available in the desktop build only ("Available in the desktop build only"). In web mode the panel shows this message and stays inactive.
Charts
SHOM (France marine charts)
What it does: enables the official SHOM marine charts (WMS) for French waters. How to use it: 1. Paste your GeoServices key into SHOM data.shom.fr API Key. 2. Click Save. 3. Select the "SHOM" map style to display them. Options & settings: - SHOM data.shom.fr API Key — access key for the official French hydrographic charts (data.shom.fr).
Tips & limits: the key is free from data.shom.fr. Without selecting the "SHOM" basemap, the key changes nothing on screen.
Offline Charts (MBTiles)
What it does: import, download, and manage marine charts in MBTiles format for offline use, with control over transparency and stacking order. The panel is split into four views: Library, Catalog, Download, ENC.
Library
What it does: lists, activates, and adjusts your already-imported charts.
How to use it:
1. Click Import .mbtiles file to add one or more files (multiple selection allowed).
2. In the desktop build, Scan folder mounts all .mbtiles in a folder in place — no copy, no duplication.
3. Click a chart's name to toggle it on/off (the map centers on it when activated).
4. For an active chart, adjust transparency with the slider and its order with the up/down arrows.
Options & settings:
| Element | Role |
|---|---|
| Search field | Filters by name or bounds |
| All / Active / Inactive filter | Shows all charts, only active, or only inactive |
| Layer / Date / Name / Size sort | Display order (layer order, date, name, size) |
| Eye (Show / Hide) | Shows or hides the active chart on the main map |
| Opacity slider | Transparency from 0% to 100% |
| Up / down arrows | Layer stacking order |
| Trash | Deletes a chart |
| Delete all | Deletes all imported charts (confirmation required) |
A banner summarizes the chart count, storage used, and number of active charts.
Catalog
What it does: browses a catalog of charts ready to download or open on external sites.
How to use it:
1. Search and filter by source or by sort key (Region / Name / Size / Source).
2. Click the download icon to fetch a chart directly.
3. For external charts, click the link (external-link icon), then re-import the .mbtiles via the import button.
Options & settings:
- Suggested for your route — charts proposed automatically based on your active route's bounds (up to 5).
- All sources filter and a source selector.
- $ indicator for paid charts; a format tag (e.g. ENC) if not MBTiles.
Download (tile download)
What it does: pre-caches basemap tiles along your active route for offline viewing.
How to use it:
1. Make sure you have an active route with at least 2 waypoints.
2. Click one of the offered tile servers to start preloading (progress bar).
3. An already-downloaded server is marked "cached" (green).
Tips & limits: requires a production build (Service Worker active); in dev mode a warning prompts you to run npm run build && npm run preview. MBTiles source links (The Chart Locker, OpenCPN, NOAA, community) are listed at the bottom.
ENC (vector S-57 charts)
What it does: download and convert official S-57/S-52 vector charts (ENC) into vector tiles.
How to use it:
1. Search for an ENC pack in the catalog.
2. In the desktop build, click Download & Convert: the app downloads, extracts, converts, then mounts the chart.
3. Converted charts appear at the top and can be deleted with one click.
Tips & limits: ENC conversion requires the desktop app (GDAL + tippecanoe). In web mode you can only open external links; convert via the command line, then import the .mbtiles through Library.
Offline
What it does: prepares the app for navigation without a connection (weather, GRIB, tiles, marine areas), tracks cache status, and backs up/restores your data. How to use it: 1. First check the coverage validation (Ready for offline / Incomplete coverage). 2. Click Prepare offline mode to download everything needed along all your routes in one go. 3. If needed, export a backup before a major passage. Options & settings:
| Element | Role |
|---|---|
| Online / Offline indicator | Connection status; when offline, the app uses cached data |
| Coverage validation | Check/cross for tiles, forecasts, GRIB, and marine areas (AMP) |
| Storage | Used space, quota, tile count, weather cache, GRIB files, AMP, PING, Service Worker entries |
| Prepare offline mode | Downloads 7-day forecasts + GRIB grid + tiles (zoom 6-14) + sea marks for all route corridors |
| Export backup | Exports a JSON backup file (routes, polars, logbook, settings) |
| Import backup | Re-imports a backup file (reload the app afterward) |
| Clear all caches | Clears all caches (tiles, weather, enrichments); your user data is preserved |
Tips & limits: preparation requires at least one route with 2 or more waypoints; otherwise an error message appears. Weather coverage is deemed sufficient from 80% of points covered. Clear all caches leaves your routes, polars, logbook, API keys, and preferences untouched. Prepare offline mode while you still have a signal, before getting underway.
See also
- AI Agent — uses the LLM endpoint configured here
- Shelter Route — uses the weather monitoring interval
- Weather Layers — data preloaded by offline mode
- Onboard Instruments — fed by Signal K and the draft setting