Home

My own product

Lily SportOS: a SaaS platform for sports clubs

Lily SportOS is my own product. It helps sports clubs manage athletes, competitions and payments in one place instead of spreadsheets, group chats and paper.

Role
Architecture, development, deployment
Type
Multi-tenant SaaS
Market
Sports clubs in Ukraine
Tatami judging console
Athlete home

Real interface: the tatami judging console and the athlete app in Telegram

The problem

Sports clubs run on spreadsheets, messengers and paper logs. Payments are tracked by hand, athlete data is scattered, and organising a competition takes weeks. They needed one system that covers all of this and works for many clubs at once.

What I built

  • A multi-tenant architecture: every club gets its own workspace with separate data, settings and roles.
  • Monthly payment tracking: who has paid and who owes, with no notebooks or manual reconciliation.
  • Tournaments, including events for several clubs: brackets assigned to tatami, a judging console with timer and points, and a scoreboard for spectators.
  • Athlete passports with history and achievements.
  • Attendance tracking and club statistics: athletes, trainings, revenue.
  • Automatic Telegram notifications: training reminders, payment debts, birthdays.
  • An admin panel for club managers and memberships for fitness clubs.
  • A Telegram Mini App for athletes and coaches in two languages, with nothing to install.
  • Infrastructure on my own VPS with Docker Compose.

What this means for you

I bring the same approach to client projects: thought-through architecture, payment and messenger integrations, a usable admin panel and a stable deployment. If your business runs on spreadsheets and manual work, that can move into a system that runs on its own.

Stack

  • NestJS
  • TypeScript
  • React
  • Telegram Mini Apps
  • PostgreSQL
  • Docker Compose

How the work went

How work on this project went, from understanding the problem to launch and improvements.

  1. 01

    Discovery

    Looked at how clubs manage athletes, payments and competitions: spreadsheets, group chats, paper logs and weeks spent organising a single tournament.

  2. 02

    Solution design

    Designed a multi-tenant architecture with separate data and roles for every club, and split the product into modules: payments, tournaments, passports, attendance, notifications.

  3. 03

    Build

    Building it module by module: a NestJS and PostgreSQL backend, a React club dashboard and a Telegram Mini App for athletes and coaches.

  4. 04

    Testing

    Every module is checked against real club scenarios: monthly payments, a bracket across several tatamis, judging with a timer and scores.

  5. 05

    Launch

    The platform runs on my own VPS with Docker Compose. A new club is connected without a separate deployment, into its own isolated space.

  6. 06

    Optimisation

    I keep improving the product based on feedback from the clubs that already use it, which is where new modules and settings come from.