Avrupa Çocuk platform
A platform connecting specialists and parents across a multi-branch rehabilitation clinic chain: a Java 25 and Spring Boot 4 backend with six user roles, a Flutter client, and separate deployments per country so regulatory boundaries stay real.
Six user types — specialist, branch manager, education director, owner, administrator, parent — each with its own access surface, on top of module-based reporting, session tracking and audited cross-branch transfers.
Authentication is OTP-to-JWT with Redis-backed one-time codes. Schema changes go through Flyway. The data model is utf8mb4 throughout and carries Turkish, English, Russian and Uzbek.
The mobile client is Flutter with Riverpod and go_router, including gamified progress tracking for parents and children. Docker Compose keeps local and production the same shape.
I also rebuilt the organisation's public site as a bespoke PHP and SQLite CMS, with an admin panel for branch content, events and media.
- Separate deployments per country, so regulatory separation is enforced by infrastructure.
- One database with a country column, and a promise that every query remembers to filter on it.
- Six role types, audited cross-branch transfers
- OTP-to-JWT on Redis, Flyway-versioned migrations
- Four languages, per-country deployments
- Flutter client with Riverpod and go_router