92cc0c87edfffbab6acd835d8522b844e1677a75
data/plugins/p4n2gpx/ (outside git, see .gitignore) now holds a plugin.json + run.rb wrapper around ../p4n2gpx/ruby/p4n2gpx.rb, so it runs through the same --south/--west/--north/--east-in, GeoJSON-on-stdout-out contract as the built-in overpass-pois plugin. run.rb converts the requested bbox to the center+radius p4n2gpx.rb itself expects, then reuses lib/maptool/gpx.rb to turn its .gpx output into GeoJSON. p4n2gpx.rb needs faraday-cookie_jar, which wasn't in the Gemfile yet (faraday itself already was, transitively via oauth2) — added and locked. Also wires P4N_USER/P4N_PASSWORD through docker-compose.yaml and the deploy workflow's "Write .env" step, the same optional-secret pattern as LIVETRACK_WEBHOOK_SECRET, since the container has no browser for p4n2gpx.rb's Chrome-cookie auth fallback.
MapTool
Table of Contents
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.
Languages
JavaScript
48.7%
Ruby
43.6%
CSS
6%
HTML
1.2%
Dockerfile
0.5%