Informatii generale
- Categorie: Educational
- Judetul: Argeș
- Surse: GitHub - 11AS28/InfoMotion · GitHub
Descriere
InfoMotion este o platformă educațională web, construită pentru elevii care doresc să înțeleagă algoritmica prin vizualizare, experimentare și practică, nu doar prin studierea pseudocodului sau a explicațiilor teoretice. Proiectul pornește de la o observație simplă: un algoritm devine cu adevărat înțeles abia atunci când îl vezi mișcându-se — pas cu pas, cu fiecare variabilă, comparație și interschimbare vizibilă pe ecran.
Tehnologii
Arhitectură
Frontend (React)
Framework: React 19 + Vite 8 (build tool)
Routing: React Router DOM 7 (cu rute protejate pentru admin)
State management: Context API propriu (autentificare + dark/light theme)
Editor cod: Monaco Editor (același ca în VS Code)
Editor WYSIWYG: react-simple-wysiwyg pentru lecții
Rendering conținut: react-markdown + html-react-parser
Securitate: DOMPurify pentru sanitizare HTML (anti-XSS)
UI libraries: sonner (notificări), lucide-react + react-icons (iconițe)
Alte integrări: js-auto-translate (traducere), use-streak (sistem streak), web-haptics (feedback haptic mobil)
Backend (Node.js/Express)
Server: Node.js + Express 5
Sistem execuție cod:
Job queue + worker pool propriu
Compilare C++ cu g++ în containere Docker izolate
Limite stricte: 2s timp, 64 MB memorie, 0.5 CPU cores
Filesystem read-only, utilizator non-root, fără acces rețea
Watchdog intern pentru containere blocate
Simulare algoritmi: Motor JavaScript propriu care generează stările pas-cu-pas (Bubble Sort, Quick Sort, căutare binară etc.)
Logging: Sistem propriu pentru evenimente critice și tentative suspecte
Autentificare & Date
Auth: Firebase Authentication (utilizatori)
Bază date: Cloud Firestore (lecții, profiluri, punctaje, progres)
Securitate: firestore.rules pentru acces autorizat
Admin auth: Al doilea nivel prin funcții serverless Vercel (api/login.js, api/admin.js) + firebase-admin SDK
Infrastructură & Deploy
Frontend + serverless: Vercel (build automat, generare sitemap, Speed Insights)
Backend execuție: VPS propriu cu Docker (izolare completă)
SEO: sitemap automat la fiecare build
Monitorizare: @vercel/speed-insights
Calitate cod
ESLint: flat config modern pentru consistență
Cerinte sistem
InfoMotion rulează integral în browser, fără instalare, drivere sau plug-in-uri.
Compatibilitate universală — interfața este responsive și se adaptează la orice rezoluție, de la telefon la desktop
Sisteme de operare — Windows 10+, macOS, orice distribuție Linux modernă, Android, iOS
Browsere suportate — Google Chrome, Mozilla Firefox, Microsoft Edge, Safari, Brave
Conexiune la internet — necesară, atât pentru autentificare (Firebase) cât și pentru compilarea/rularea codului (cerere către backend)
Realizatori
Stefan Alexandru Ologeanu
- Scoala: Colegiul National Al. Odobescu
- Clasa: 10
- Judet: Argeș
- Oras: Pitesti
Emanuel Bivolu
- Scoala: Colegiul National Al. Odobescu
- Clasa: 10
- Judet: Argeș
- Oras: Pitesti
Screenshots


