02 / 2024–2025
Florbal ZČU
A university project that grew into a deployed club application for teams, seasons, matches and statistics.

01
What it solves
The club needed one place for public results and the daily administration of its sporting data.
02
My work
I built the full-stack Nuxt application, data model, roles, administration and media handling. The canonical repository is private.
Product character
What keeps the club moving
Every element below refers to a verified part of the project.
- Seasoncompetition frameClub operations
- Teams and playersline-ups and rolesClub operations
- Matchevents and resultClub operations
- Administrationauthorised data changesAdministration
03 · Two modes
Public club, working tool.
Visitors follow teams, matches and statistics. Authorised users work with the same domain data to prepare seasons, line-ups and live match records.
04 · Centre
The match connects the system.
Line-ups, goals, penalties and the result connect players, teams and a season. The data model preserves those relationships for live entry and subsequent statistics.

Technical view
Verified structure
- Club operationsSeasons, teams, players, matches and statistics
- Full-stack applicationNuxt 3.16 and TypeScript
- Domain dataMongoDB and Mongoose
- AdministrationRoles, permissions and administration
- MediaCloudinary for club photography
- Nuxt 3.16
- TypeScript
- MongoDB
- Mongoose
- Cloudinary
- Vercel