DaLin is an information system for running an orienteering club — from race entries and member finances to shared transport to races. Instead of juggling spreadsheets, e-mails and bank statements, club members and administrators get one place where everything happens automatically.
The system is tightly integrated with ORIS, the official Czech orienteering information system, so race calendars, entries and results stay in sync without manual work.
Members browse the race calendar (synchronized from ORIS), pick their class and enter with a few clicks. The club administrator no longer collects entries by e-mail — DaLin sends them to ORIS automatically and keeps track of deadlines, changes and cancellations. Relay events are supported too, including building relay teams from individual members.
Every member has a credit account in the club. Entry fees are charged against it automatically, and incoming payments are downloaded straight from the club's bank account (Fio banka and Moneta connectors are built in) and matched to members. Everyone can see their own balance and transaction history at any time; billing specialists see the whole picture.
Getting 40 people to a forest on Saturday morning is a logistics problem. Members can request a seat or offer places in their car for a specific event, and the system matches requests with offers.
A simple internal marketplace for club gear — jerseys, SI chips, maps or second-hand equipment. Orders are paid from the member's club credit.
Personal race calendars can be subscribed to via iCal in any calendar app. Entry lists can be exported in ČSOS and IOF XML formats for organizers. Members receive e-mail notifications about entry deadlines and important events.
Administrators can publish news posts and static pages, so the system doubles as a lightweight club website with a members-only section.
Fine-grained roles (member, racer, event master, billing specialist, club admin, …) make sure everyone sees exactly what they need — nothing more, nothing less.
- Members & racers — enter races, watch their credit, share rides.
- Club admins & event masters — manage the calendar, entries and members.
- Billing specialists — pair bank payments, oversee club finances.
- Developers — a versioned REST API (
/api/v1/) is available for integrations, secured by Sanctum tokens and API keys.
⚡ This project is used in production by the ABM Brno orienteering club.
📘 Documentation on this project may show on project page.
- PHP 8.5, MySQL 8 and up
- Laravel 13.x - PHP framework
- Filament 5.x - admin panel
- Livewire 4 - full-stack framework for dynamic interfaces
- Alpine.js - lightweight JavaScript framework
- Tailwind CSS 4 - utility-first CSS framework
- Flowbite - open-source Tailwind CSS library
Follow these instructions to install the project for local development:
Note
For local development use the 🐳 Docker container (Laravel Sail).
A Makefile with common commands is included — run make to see the help.
- Clone this repo:
git clone git@gitlab.com:jzejda/dalin.git # or git clone https://gitlab.com/jzejda/dalin.git cd dalincp .env.example .envmake up— start the Docker containersmake bash— enter the PHP container, then inside it:composer installphp artisan key:generate- Set the database config in the
.envfile php artisan migrate --seed— run migrations and seed dataphp artisan shield:install→ yes and yesnpm install— install frontend dependenciesnpm run dev— compile the assets
- Open
http://localhostin your browser. - Log in to the admin panel at
http://localhost/admin/loginwith credentials fromdatabase/seeders/UserTableSeeder.php.
Useful development services running alongside the app:
| Service | URL | Purpose |
|---|---|---|
| phpMyAdmin | http://localhost:8084 |
Manage the MySQL database |
| Mailpit | http://localhost:8025 |
Catch and preview outgoing e-mails locally |
Common day-to-day commands (run from the project root):
make pest # Run the test suite
make lint # Check code style (Pint)
make phpstan # Static analysis
make clear # Clear all cachesThis project is open-sourced software licensed under the MIT license.
