Introduction
Cluvo is a B2B SaaS ecosystem designed for sports clubs and events. As co-founder and lead tech, I designed and implemented the entire technical chain, from application architecture to production infrastructure, including CI/CD and product management.
The long-term vision is to build a modular platform covering club management, event management, website building, and inter-club networking. The first module (tournament management) is in production and commercialization is planned for late 2026.
Application Architecture
The application is built on a classic 3-tier architecture: a Laravel API, a React frontend, and a MySQL database. The architecture is designed to be modular, with quasi-autonomous but interconnected modules, and a microservices vision for the back-end in the medium term.
Three environments are configured (development, staging, production) to ensure a controlled delivery cycle.
I implemented 75% of the codebase, focusing on API-side complexity, while performing code review on 100% of my partner's contributions.
Migration to a Dockerized Infrastructure
The project started on O2Switch shared hosting, which quickly became limiting. I led the complete migration to a Linux VPS with a full Docker configuration:
- Nginx reverse proxy as entry point
- Environment isolation via separate Docker networks
- Ansible scripts and playbooks for data migration
- SSH hardening
The static HTML showcase website remains on O2Switch; only the application was migrated.
CI/CD
The CI/CD pipeline is built on GitHub Actions with an advanced deployment workflow:
- Automated tests and SAST scan on each push
- Docker image build within the pipeline
- Push to GitHub Container Registry with versioned tag
- Image pull from the production server
This registry-based approach is more optimized than the rsync deployment I had set up on other projects.
Product Management and Prospecting
Beyond the technical side, I also handle product management: gathering requirements from partner clubs, architecture trade-offs, and positioning strategy.
For prospecting, I set up a fully automated workflow to retrieve and categorize sports clubs in a given area, then conduct an automated investigation on each one (web presence, social media, competitor identification). Results are integrated directly into a self-hosted CRM on my personal infrastructure.