Genuinely easy to use
Drag-and-drop lane editing, a live run screen, and sensible defaults from the official event program. Built for volunteers, not specialists — most tasks are a click, not a manual.
From the first roster import to the last printed heat sheet, the whole lifecycle is covered. Here's what you get.
Drag-and-drop lane editing, a live run screen, and sensible defaults from the official event program. Built for volunteers, not specialists — most tasks are a click, not a manual.
Set up meets, edit programs, and ingest results from any browser on any device. The end of emailing database files the night before — one source of truth everyone can reach.
Every meet and every season in one database, indexed per swimmer. Best times, progression charts, and records update centrally — searchable for years.
Writes are gated behind login; every mutable row carries a version so two operators can't silently clobber each other (optimistic locking → a clear conflict, not lost data). Self-host it and your data never leaves your control.
A clean layered architecture — repositories, services, routers — enforced as a build-time gate. New report types, file formats, and endpoints slot in along documented seams instead of fighting the code.
Imports .gen result files — the MM-Link timing-console format produced by both Colorado Time Systems consoles and TimeDrops. No proprietary middleware: drop the file and lanes resolve live. A direct, mDNS-discovered link to a TimeDrops tablet is in beta; direct serial/USB control of CTS consoles is on the roadmap.
Changes broadcast over WebSocket to every screen the instant they happen. The clerk, the announcer, and the timer all see the same meet, updating in real time.
Lane sheets, full heat programs, shepherd sheets, and team entries — generated as print-ready PDFs and HTML, matching the official formats your officials already expect.
Semantic markup, full keyboard navigation, visible focus, and color-contrast and reduced-motion support throughout — so deck volunteers of every ability can run the meet.
The interface is built for translation from the ground up, with right-to-left support and dozens of locales registered. Switch languages on the fly; untranslated strings fall back gracefully.
Piranha is free, open-source, and built in the open. Pick a deployment model, read the docs, or jump straight into the code.