randy ea9cd5fc40 Fix three bugs found reviewing this session's changes
- notes.js's ICON_LABELS wasn't extended for the shop_supermarket/
  shop_convenience keys icons.js added — the note icon picker showed
  the raw internal key as the title instead of a real label.
- Plugins.run mislabeled a malformed plugin.json as "plugin did not
  print valid JSON" — a message written for bad script stdout, not a
  bad manifest, since both paths shared one rescue.
- overpass_pois.rb's description_for joined raw OSM tag values with
  "\n" — an operator/opening_hours tag with an embedded newline could
  inject an extra line into the popup that gpx.js's formatDescription
  (built for p4n2gpx's own well-formed lines) would render as its own
  independent, legitimate-looking link. Tag values are stripped of
  embedded newlines before joining.
2026-09-09 18:21:47 +02:00
2026-09-09 17:38:53 +02:00
2026-09-09 17:38:53 +02:00
2026-09-09 17:38:53 +02:00

MapTool

A mapping application written in Ruby with Sinatra.

The project’s shape is still open — this is the initial scaffold.

Status

Early scaffold. The web application serves a vector map (MapLibre GL JS), with an online style and an optional offline style backed by a local PMTiles file, an animated RainViewer radar overlay, GPX upload/display (points and tracks, organized in folders), and a live position marker from a local GNSS receiver via gpsd.

Requirements

  • Ruby (see .ruby-version) and Bundler

Getting started

bundle install
bundle exec puma -C config/puma.rb

Then open http://127.0.0.1:4567 in a browser.

S
Description
No description provided
Readme
2.2 MiB
0 Stars 1 Watchers 0 Forks
Languages
JavaScript 48.7%
Ruby 43.6%
CSS 6%
HTML 1.2%
Dockerfile 0.5%