this is the first feature release of the app potato-mesh v0.1.0 - a simple meshtastic node dashboard for your local community.
What works:
- updating nodes from a locally connected meshtastic device (via serial)
- awaiting messages on default channel (0) from a local meshtastic device
- storing nodes and messages in a local database (sqlite3)
- displaying nodes ordered by last seen in a web app table view
- displaying nodes by geographic coordinates on a map layer, coloured by device role
- displaying new node notifications and chat messages in default channel in chat box
- displaying active node count and filtering nodes by name
- exposing nodes and messages to api endpoints
What does not work (yet):
- posting nodes and messages to the api endpoints (wip)
- white-label for your community (need to updated some berlin-specific hardcoded stuff)
What's Changed
- Add index page and /nodes route for node map by @l5yth in #4
- Handle dataclass fields in node snapshots by @l5yth in #6
- feat: load nodes from json for tests by @l5yth in #8
- Ignore Python pycache directories by @l5yth in #10
- Add JSON ingest API for node updates by @l5yth in #11
- Remove raw node JSON column by @l5yth in #12
- Filter stale nodes and add live search by @l5yth in #13
- Show live node count in nodes page titles by @l5yth in #14
- Default missing node role to client by @l5yth in #15
- Color markers by role with grayscale map by @l5yth in #16
- Add chat box for node notifications by @l5yth in #17
- Adjust marker size and map tile opacity by @l5yth in #18
- Display position time in relative 'time ago' format by @l5yth in #19
- Sort initial chat entries by last-heard by @l5yth in #20
- Add persistent footer with contact information by @l5yth in #22
- Add first_heard timestamp by @l5yth in #23
- data: enable serial collection of messages on channel 0 by @l5yth in #25
- Add optional debug logging for node and message operations by @l5yth in #29
- refactor: replace deprecated utcfromtimestamp by @l5yth in #30
- Clamp node timestamps and sync last_heard with position time by @l5yth in #31
- Add messages API endpoint with node details by @l5yth in #33
- Optimize web frontend and Ruby app by @l5yth in #32
- Normalize future timestamps for nodes by @l5yth in #35
- feat: append messages to chat log by @l5yth in #36
- Sort chat entries by timestamp by @l5yth in #38
- Escape chat message and node entries by @l5yth in #39
- Fix string/integer comparison in node query by @l5yth in #40
- Limit chat log and highlight short names by role by @l5yth in #42
- Display filtered active node counts in #MediumFast subheading by @l5yth in #44
- Filter out distant nodes from Berlin map view by @l5yth in #43
- Harden mesh utilities by @l5yth in #45
- feat: make frontend responsive for mobile by @l5yth in #46
- Add daily date separators to chat log by @l5yth in #47
- Show daily node count in title and header by @l5yth in #49
New Contributors
Full Changelog: https://github.com/l5yth/potato-mesh/commits/v0.1.0