Skip to content

3.0.0

Latest

Choose a tag to compare

@Surfoo Surfoo released this 20 Oct 21:30
· 10 commits to main since this release

[3.0.0] - 2026-10-20

Complete rewrite: Leaflet and plain JavaScript are replaced by OpenLayers, TypeScript and Vite. GPX files are still processed locally in the browser only.

Added

  • Fixed sidebar next to the map, collapsible with a sliding animation (the map does not move).
  • Load several GPX files at once, from the device or from a URL.
  • Cache icons per type, shown in a filter grouped by colour (traditional, multi, events, virtual/earth/webcam, mystery and others).
  • Filters by difficulty and terrain (min/max ranges), and a switch to hide found caches.
  • Search by geocode or name: centres the map on the cache and opens its popup.
  • Popup with type, size, owner profile link, formatted date, difficulty/terrain and coordinates in degrees and decimal minutes, copied to the clipboard on click.
  • Track and route display (<trk> and <rte>), included when fitting the map to the data.
  • Optional geocode labels and perimeters around caches, and user geolocation.
  • Tooltip with the cache name on hover.
  • Basemap picker on the map with thumbnails: OSM Standard, OSM Humanitarian, CyclOSM, OpenTopoMap and Satellite (Esri).
  • Display settings saved in the browser (localStorage): language, basemap, geocode labels, perimeters and sidebar state. Filters are not saved.
  • Translations: English, French, German, Spanish and Italian.
  • Unit tests with Vitest (npm test) for the GPX parser, the filters and the coordinate formatting.

Changed

  • Icons now come from Lucide, including the map controls.
  • Waypoints that are not geocaches are ignored.
  • The dark theme was removed.
  • The page stays hidden until the interface is ready, to avoid a flash of unstyled content in development.
  • Tooling: Biome for lint and formatting, TypeScript 7 compatible configuration (no baseUrl).