Repository navigation
openRun 0.2.0
Try it without installing anything: openrun-demo.fly.dev signs you in as Sam, a runner in a run club. It resets every night.
New
- Club logos. Organisers can upload a logo and pick the square to keep, or fit the whole image. Clubs without one get a logo generated from their initials.
- Light or dark mode. Choose in Settings → This device, or keep following the device.
- A new look. The brand colour is now teal.
- Demo mode.
DEMO_MODE=trueturns an instance into a public demo: sample data, a shared login, and a reset every night. It replaces everything in the database, so never use it on a real instance. See docs/DEMO.md.
Security
-
Updated dependencies with known vulnerabilities, including
sharp(image handling, with its bundled libvips) and React Router (an open redirect in links). -
The Docker image no longer contains npm, corepack or Yarn. Nothing used them at runtime, and they made up most of the image's vulnerability reports.
-
Node base images are pinned by digest, and every GitHub Action by commit.
-
Images on GHCR carry signed build provenance, and each release includes a signed source archive. To check an image:
gh attestation verify oci://ghcr.io/stretch0/openrun:0.2.0 -R stretch0/openRun
-
CodeQL, dependency review, Trivy image scans and OpenSSF Scorecard run on every change. Vulnerabilities can be reported privately.
Upgrading
Back up first (how), then:
docker compose pull
docker compose up -dOne database update (club logos) is applied when openRun starts. If you pinned the release line in docker-compose.yml, change ghcr.io/stretch0/openrun:0.1 to :0.2.