Perun

From Local Area Network
Perun
What it does: Privacy-first run tracker, rebuilt on the Logos stack as an Android app and a Basecamp module
Stage: Almost done
Licence: MIT or Apache-2.0 (licence files in the repository)
Verified on 4 November 2026 against README and commit of 11 October 2026.

Perun is a privacy-first run tracker by the GitHub user vpavlin. Its Android app sends runs over Logos Messaging (Logos Delivery) to a Basecamp module on the desktop.

What it does

  • The Android app records runs with GPS, also in the background, and shows them on the phone.
  • The app's "Sync to Basecamp" sends a run to the user's Basecamp over Logos Delivery. The app uses Loam's shared node when Loam is installed, and otherwise runs its own. Loam is a separate app that runs one shared Logos Delivery node per phone for local-first apps.
  • perun_core, the Basecamp core module, receives each run, decodes the track, computes splits, elevation, pace and heart rate, and stores them in an SQLite database.
  • Perun Analytics (perun_analytics), the desktop Basecamp view, shows the runs.
  • perun_core can also run headless, with no interface, as an always-on hub.
  • Both ends follow a shared wire contract, the message format they agree on. Its compact track codec fits a normal run in one 150 KB Delivery message.
  • The blockchain is out of scope for now, and Logos Storage is an optional backup that is not on the sync path.

Stage: Almost done. The README says "the Android app and the Basecamp core + view are released", meaning published on apps.vpavlin.xyz, and adds that the desktop is Linux x64 only for now. The modules are still below version 1.0. The original React web app now lives in a separate repository, vpavlin/perun-legacy. The README does not say whether it is an official Logos project.

Use it

  1. Android: add the F-Droid repository from apps.vpavlin.xyz and install Perun, ideally with Loam as well. It runs on arm64 phones.
  2. Desktop: this needs Basecamp 0.3 on Linux x64. Add https://apps.vpavlin.xyz/logos-repo.json in Basecamp's package manager, then install Perun Analytics. It pulls in perun_core.
  3. Instead of the repository, a portable .lgx from a GitHub Release can be installed with lgpm install URL --to ./modules, where URL is the release file.

Build it

  • nix build ./module#lgx-portable builds a portable bundle. The portable variant should always be built instead of .#lgx.
  • According to the README, pushing a v* tag makes CI build the perun_analytics portable .lgx for linux-amd64 and attach it to a GitHub Release. The workflow file triggers only on module-v* tags.
  • After a release, scripts/gen-repo-index.sh vX.Y.Z refreshes repo/index.json, which is then committed.

Releases

The latest tags are module-v0.6.0 and mobile-v1.12.0, both dated 16 July 2026. module/metadata.json gives perun_analytics version 0.9.0, and core/metadata.json gives perun_core version 0.10.4.

See also

Sources

Page status: Stub. Stub · Outline · Usable · Guide · Star. Anyone can improve this page and change its status.