randy 9edc2d9534
CI / check (push) Successful in 22s
CI / deploy (push) Successful in 12s
Show clicked hiking trail info in a docked panel, not a popup
A map-anchored Popup on a trail click routinely overlapped the very
line it described. Follows the same click -> docked panel pattern
gpx.js already uses for a track line click (TrackProfilePanel) rather
than inventing a new one: a fixed #trail-panel docks to the right edge
on desktop and the bottom edge on narrow viewports (this file's first
@media breakpoint), so the trail stays fully visible either way.

routeHtml()'s own markup is reused unchanged for the panel body —
.trail-panel__body's padding matches .maplibregl-popup-content's own
(15px 10px) so the header's canceling negative margin still lines up.
The popup-identity staleness guard for the async Overpass lookup is
replaced with a plain request token, since there's no longer a fresh
Popup instance to key off of.
2026-09-15 12:52:54 +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%