SportIQ — SaaS Platform for Sports Federations
The SaaS platform that digitalizes sports federation management
- 6
- Integrated modules
- 60+
- Database tables
- 5
- Roles per federation
The challenge
Moroccan and French-speaking sports federations historically ran licensing, competitions, and finances through paper processes and disconnected tools — spreadsheets, physical registers, and email threads — with no centralized view per federation, league, or club. Tracking player transfers, issuing license cards, and reporting competition results depended on time-consuming, error-prone manual coordination. Saad was tasked with designing a single platform capable of digitalizing a sports federation's entire operational lifecycle, starting from the real-world case of FRMTT (the Moroccan table-tennis federation) and generalizing it into a SaaS product usable by any federation.
The solution
Saad built SportIQ, a multi-tenant SaaS platform covering a sports federation's entire operation across six integrated modules:
- Federation management — clubs, leagues, disciplines
- Licences & transfers — online applications, multi-step validation workflow, physical card issuance
- Competitions & matches — brackets, live scores, standings
- Training & certifications — courses, exams, digital certificates
- Marketing & website — an auto-generated public website per federation
- Finance & treasury — club account balances, bank reconciliation, budgeting
The results
The result is a multi-tenant platform genuinely running in production on a dedicated domain (sportiq.ma), with an automated CI/CD pipeline (GitHub Actions building and deploying over SSH on every push to the production branch). All six functional modules work end-to-end, from onboarding a federation to issuing a numbered license. The federation-scoped isolation architecture, the per-tenant sequential ID system, and the HMAC-secured file microservice form a solid technical foundation, built to host multiple federations without any risk of cross-tenant data leakage.
Methodology and project management
Saad grew SportIQ out of one concrete, real need: digitalizing FRMTT. This use-case-first approach let him validate each module — licensing, competitions, finance — before generalizing the data model to natively support multiple federations. Development followed an iterative, per-backend logic — public showcase site, licensing backoffice, per-federation CMS, file microservice — each shipped and deployed independently, yet sharing one MySQL database and the same federation-scoped isolation rules, keeping the whole platform technically consistent end-to-end.
Technical architecture and performance
Every backend (showcase site, licensing, CMS, files) queries the same MySQL 8 database, but no query ever runs without being scoped by the federation_id read exclusively from the authenticated JWT — never from the request body or URL — a non-negotiable rule enforced across the whole platform. Over 60 tables pair an auto-increment technical ID (never exposed) with a per-federation sequential public ID, generated via a database trigger and a shared stored function. Access control relies on 5 roles per federation with per-user permission overrides, computed into a flat permission set at login. File storage is isolated in a microservice reachable only via HMAC-signed requests.