04. EdTech & Sisteme educaționale
Sisteme de management pentru instituții educaționale (migrare legacy → modern), aplicații de jocuri matematice pentru copii, sisteme de admitere universitare și jocuri educative iOS.
4.1 Migrare sistem informatic colegiu: Delphi legacy → FastAPI + React
Sector: EdTech / School information system (SIS) Format livrare: API + Web SPA + variantă deployment Raspberry Pi
Provocare
Instituție de învățământ folosea un sistem informatic Delphi vechi de peste 15 ani, cu:
- bază de date Firebird 3.0 cu zeci de tabele și logică de business în triggers/procedures
- aplicație desktop care nu putea fi accesată remote
- imposibilitate de extindere cu funcționalități moderne (mobile, integrări, dashboards)
- echipă IT internă care nu putea menține Delphi
Constrângere critică: schema Firebird trebuia păstrată pentru continuitatea datelor istorice.
Soluție livrată
Migrare graduală fără pierdere de date:
Backend FastAPI modern (Python 3.13) care:
- conectează direct la Firebird 3.0 (păstrare schema legacy)
- expune REST API cu Pydantic v2 pentru validare strictă
- folosește JWT pentru auth modernă
- structlog pentru logging structurat
- slowapi pentru rate limiting
- passlib + argon2 pentru hashing parole modern (înlocuieste hash-urile vechi gradual)
Frontend React + Vite + TypeScript:
- shadcn/ui (Radix UI) pentru componente accesibile
- Tailwind pentru styling
- TanStack Query + Table pentru server state și tabele complexe
- React Router pentru navigare
- React Hook Form + Zod pentru formulare cu validare type-safe
- ky pentru HTTP client modern
- date-fns pentru manipulare date
Variantă Raspberry Pi: aceeași stack deployat pe Pi pentru locații cu infrastructură limitată (Python 3.13, uv, Docker, structlog identic). Permite operare locală cu sync ulterior.
Cod Delphi legacy păstrat ca referință explicită în repo (delphi-old/) pentru consultare în timpul migrării.
Stack tehnologic
Backend: FastAPI, Python 3.13+, Pydantic v2, Firebird 3.0 (păstrat), uv, Docker Compose, structlog, slowapi, passlib argon2 Frontend: React + Vite + TypeScript, shadcn/ui, Tailwind, TanStack Query + Table, React Router, React Hook Form + Zod, ky, date-fns, nginx (production) Legacy reference: Cod Delphi/Pascal păstrat în repo pentru consultare
Livrabile cheie
- API REST modern peste schema Firebird existentă (zero data migration)
- UI web accesibil din orice browser (înlocuiește desktop Delphi)
- Variantă Pi pentru locații remote
- Roadmap clar pentru migrare graduală a logicii de business din triggers Firebird în servicii Python
4.2 Platformă jocuri matematice pentru copii (web + mobile)
Sector: EdTech / Gamified learning Format livrare: API NestJS + mobile Flutter + admin web
Provocare
Construirea unei platforme educaționale pentru clasele 1-12 cu:
- jocuri interactive de matematică captivante pentru copii
- sistem de progres, leaderboards, achievements
- backend scalabil pentru mulți utilizatori concurenți
- search rapid în catalog de jocuri/exerciții
- analytics pentru părinți/profesori
- notificări push pentru engagement
Soluție livrată
Backend NestJS 11 cu TypeScript strict mode:
- Prisma 7 pentru ORM type-safe peste PostgreSQL 18
- Redis + BullMQ pentru job-uri async (notificări, calcule leaderboards)
- Meilisearch 1.15 pentru search instant în catalog
- JWT RS256 pentru auth securizat
- Pino pentru logging structured high-performance
- Helmet pentru security headers
- Throttler pentru rate limiting
- Sentry NestJS + profiling pentru observability completă
Mobile app Flutter 3.41:
- Riverpod + Freezed + Retrofit pentru cod generat type-safe
- GoRouter 17 pentru navigare declarativă
- Dio pentru HTTP
- flutter_secure_storage pentru token-uri
- Rive pentru animații complexe ale personajelor și feedback gamification
- google_fonts pentru tipografie consistentă
Admin web + landing pentru părinți/profesori (placeholder structură, scalabilă).
Stack tehnologic
Backend: NestJS 11, TypeScript strict, Prisma 7 + PostgreSQL 18, Redis + BullMQ, Meilisearch 1.15, JWT RS256, pnpm, Pino, Helmet, Throttler Mobile: Flutter 3.41, Riverpod + Freezed + Retrofit + Dio, GoRouter 17, flutter_secure_storage, Rive, google_fonts Integrări: Sentry (NestJS + profiling node), Firebase Admin (push notifications), Resend (email transactional), Mixpanel (analytics behavior), APN (Apple push)
Livrabile cheie
- API performant cu search instant Meilisearch
- Aplicație mobilă cu animații Rive pentru engagement copii
- Sistem complet de observability (Sentry + profiling + Mixpanel)
- Notificări multi-canal (push + email)
- Cod 100% type-safe end-to-end (Prisma schema → NestJS DTO → Retrofit Dart)
4.3 Aplicație web jocuri matematice (valoare pozițională 1 → 1.000.000)
Sector: EdTech / Joc educativ web Format livrare: SPA React deployment static
Provocare
Joc educativ pentru copii care învață valoarea pozițională a numerelor (unități, zeci, sute, mii, milioane) într-un mod interactiv și vizual.
Soluție livrată
SPA React 19 + Vite cu UI custom (BuildingGrid, ExplainPanel, MapScreen, levels.js). Joc bazat pe construirea de “clădiri” reprezentând cifre. Deploy static pe AWS Lightsail prin script cross-platform (macOS/Linux/Windows Git Bash). Containerizare Docker + nginx opțională.
Stack tehnologic
React 19, Vite 8, JavaScript plain (pentru simplitate maintenance pe termen lung), AWS Lightsail, Docker + nginx.
4.4 Sisteme legacy pentru admiterea universitară
Sector: EdTech / Higher education Format livrare: Aplicații desktop Delphi
Provocare
Universitate avea nevoie de sisteme robuste pentru:
- gestiunea procesului de admitere (mii de candidați, criterii multiple)
- generarea de rapoarte statistice (premii la conferințe internaționale)
- re-implementare versiuni succesive (v1 → v3) cu îmbunătățiri arhitecturale
Soluție livrată
Sistem informatic complet Admission (versiunile 2005 → 3.0) implementat în Delphi cu baze relaționale (MS SQL Server / InterBase). Versiunea premiată cu diplomă gradul I la conferință internațională de economie + informatică.
Stack tehnologic
Delphi (Pascal), MS SQL Server, InterBase/Firebird, MS Access pentru rapoarte ad-hoc.
4.5 Jocuri educative iOS pentru copii (apps istorice)
Sector: EdTech / Mobile educational games Format livrare: iOS native (ObjC/Swift)
Provocare
Aplicații mobile educative pentru:
- învățare numere (jocuri Numbers, Numbers v2 cu refactor design)
- învățare cuvinte și vocabular (joc Words cu dicționar)
Soluție livrată
Aplicații iOS native cu UI custom orientat copii, integrare AdMob/AdWhirl pentru monetizare, Crashlytics pentru observability. Suport CocoaPods, multi-locale (de/en/es/fr pentru variantele cu reach internațional).
Stack tehnologic
iOS native (Objective-C / Swift), CocoaPods, AdMob 6.7, AdWhirl, GoogleAnalytics, Crashlytics framework, Xcode workspace.
Pattern-uri arhitecturale EdTech demonstrate
- Migrare graduală legacy → modern păstrând schema bazei de date (zero data migration risk)
- Cod legacy ca referință explicită în repo (nu doar șters) pentru consultare în timpul tranziției
- Variantă Raspberry Pi a aceluiași stack pentru locații cu infrastructură limitată
- Cod 100% type-safe end-to-end (Prisma → NestJS DTO → Retrofit Dart cu Freezed)
- Animații Rive pentru engagement gamification în aplicații pentru copii
- Search instant Meilisearch ca alternativă light la Elasticsearch
- Logging structured (structlog Python, Pino Node) pentru observability profesională
- Multi-platform UI consistent (web + mobile) cu același design language