Informatii generale
- Categorie: Educational
- Judetul: București
- Surse: GitHub - Octopus5/QEDit · GitHub
Descriere
Proiectul QEDit este o platformă educațională inovatoare, concepută pentru a democratiza studiul fizicii particulelor elementare și al mecanicii cuantice. Soluția transformă teoria abstractă și complexitatea matematică într-o experiență digitală interactivă, permițând elevilor și studenților să vizualizeze, să simuleze și să valideze concepte subatomice într-un mediu controlat.
Module și Funcționalități
Aplicația îmbină explorarea științifică exactă cu elemente de gamificare pentru a facilita învățarea intuitivă:
Catalogul Modelului Standard: O bază de date interactivă care expune vizual caracteristicile fundamentale ale quarcurilor, fermionilor și bosonilor.
Reactorul de Hadroni: Un mediu de testare în care utilizatorii pot combina particule. Algoritmii din spate validează instantaneu interacțiunile pe baza legilor de conservare (sarcină, aromă, spin).
Simulatorul de Coliziuni (LHC): Un modul grafic dinamic ce ilustrează interacțiunile cinematice dintre particule la diferite niveluri de energie.
Calculator Cuantic: Instrument dedicat determinării precise a mărimilor specifice (energie cinetică, energie totală, rigiditate, câmp magnetic).
Pilonul Educațional: Un centru de documentare cu sinteze teoretice validate academic, completat de chestionare de evaluare și jocuri de memorie pentru consolidarea cunoștințelor.
Tehnologii
Arhitectura Sistemului, Scalabilitate și Integrarea Tehnologică
Pentru a asigura o execuție fluidă și un consum minim de resurse, sistemul a fost proiectat cu un accent obsesiv pe performanță, scalabilitate orizontală, securitate binară, distribuție cross-platform și o amprentă minimă de memorie. Arhitectura este de tip Client-Server local, strict stratificată conform modelului Model-View-Controller (MVC) extins, separând complet logica de sistem de interfața grafică.
Backend, Managementul Memoriei și Securitate
Nucleul aplicației este propulsat exclusiv de limbajul Go (Golang), operând ca motor de calcul al aplicației.
Eficiență Nativă și Wails v2: Componenta Wails face legătura (binding) directă între funcțiile din Go și interfața grafică. Spre deosebire de framework-urile web clasice (precum Electron sau NW.js) care includ un motor Chromium masiv (~200MB), Wails folosește motorul web nativ pre-instalat pe sistemul gazdă (Edge WebView2 pe Windows și WebKit pe macOS/Linux). Această arhitectură reduce consumul de memorie RAM în idle la sub 50MB și scurtează timpul de pornire (Cold Start) la sub 150 de milisecunde.
Goroutines și Asincronicitate Reală: Pentru simulările matematice de mare intensitate (precum calculul a mii de evenimente Monte Carlo pentru collider), logica lansează goroutines mapate dinamic direct pe nucleele fizice/logice ale procesorului. Astfel, interfața UI din JavaScript rămâne complet fluidă, la 60 FPS, fără niciun freeze (frame drop).
Punte IPC (Inter-Process Communication) Bidirecțională: Comunicarea dintre Go și frontend se bazeaza pe un bridge IPC pe bază de pipe-uri locale ultra-rapide și WebSockets securizați ascunși. Apelurile sunt serializate în JSON, executate în thread-ul nativ Go și returnate ca un Promise JavaScript cu o latență de sub 1ms per apel.
Integrarea embed.FS și Securitatea Executabilului: La compilare (wails build -clean -m), tot conținutul frontend (HTML, CSS compilat de PostCSS/TailwindJIT, SVG-uri, fonturi) este convertit într-un fișier binar embed.FS invizibil și lipit direct în interiorul executabilului. La rulare, fișierele sunt citite direct din spațiul de memorie virtuală (Memory-Mapped I/O), neexistând request-uri HTTP care să fie blocate de antivirus. Executabilele sunt comprimate extrem (UPX), protejate contra reverse-engineering-ului.
Frontend și Optimizarea Radicală a Interfeței
Pentru a maximiza performanța, frontend-ul renunță la librării masive și Virtual DOM-uri (cum ar fi React, Vue sau Angular) în favoarea unei arhitecturi “bare-metal”.
Vanilla JavaScript (ES6+) și HTML5 Semantic: Manipularea se face direct la nivelul Document Object Model (DOM). Prin instanțierea nativă a componentelor se evită complet overhead-ul de “reconciliation cycle”, oferind o complexitate de timp constantă la modificarea telemetriei pe ecran (Zero-Latency Interface).
Motor Grafic HTML5 Canvas: Este responsabil pentru randarea optimă, la 60 FPS, a traiectoriilor complexe din simulatorul LHC și a animațiilor din reactor. Acesta lucrează în tandem cu Chart.js pentru a genera histograme live și grafice de tip radar (analiza particulelor), completate de iconografie vectorială FontAwesome.
Micro-Rutare (SPA Local): Sistemul Single Page Application nu se bazează pe dependințe de rutare externe. Interceptează click-urile prin arhitectura Event Delegation și asignează asincron clase CSS ce aplică tranziții accelerate hardware (transform și opacity) direct pe GPU.
Data Persistence (Offline-First): Aplicația este prin design 100% offline-ready. Setările, progresul utilizatorului și inventarul din reactor sunt salvate iterativ în window.localStorage. Pentru seturile masive de date (log-uri de MB/GB), frontend-ul apelează direct backend-ul Go pentru scrierea/citirea fișierelor de pe discul nativ, evitând limitele de 5MB ale browserului.
Stilizare, UI/UX și Tematizare Dinamică
Designul este randat în totalitate prin motorul Just-In-Time (JIT) al framework-ului utilitar Tailwind CSS, îmbinând funcționalismul cu o estetică modernă.
Liquid Glass & Glassmorphism: Interfața folosește sistemul de sticlărie hibridă (.liquid-glass). Acesta deformează optic fundalul prin backdrop-filter: blur(40px) saturate(180%), aplică profunzime și adaugă umbre volumetrice (box-shadow tridimensional). Împreună cu animațiile de tip frost-pulse, creează panouri flotante hiper-realiste.
Schimbarea Temelor Vizuale: Se realizează instantaneu la nivel de arbore de către sistemul CSS Custom Properties atașat elementului :root, transferând reflow-ul structural direct plăcii video. Interfața oferă trei experiențe vizuale complet distincte:
Modul luminos: Oferă un contrast puternic negru-pe-alb mat. A fost proiectat special pentru vizibilitatea textului și a graficelor intr-un mediu luminos.
Modul întunecat: Folosește o paletă clasică de tip terminal, construită pe griuri ardezie absorbante. Scopul său este să suprime radiația de lumină albastră a monitoarelor și să prevină epuizarea retiniană (“eye strain”) în timpul simulărilor și sesiunilor lungi de lucru.
Modul cyberpunk: Transformă interfața introducând elemente retro-futuriste: accente de neon roz și turcoaz , o textură de fundal animată cu artefacte de tip scanline (filtru de monitor CRT) și o suprascriere a schemelor de culori din Chart.js, făcând axele graficelor să arate ca un terminal din anii ‘90
Accesibilitate (A11Y) și Internaționalizare (i18n)
Motor i18n Proprietar Async: Traducerea interfeței nu depinde de pachete externe greoaie. Folosește o mașinărie internă asincronă care indexează fișiere JSON și aplică clasa TreeWalker pentru a înlocui exclusiv nodurile de text (marcându-le cu atribute ca data-i18n). Viteza de transformare a interfeței este de sub 15 ms, garantând protecția totală a blocurilor de matematică din MathJax/LaTeX împotriva distorsiunilor de traducere.
Standarde de Accesibilitate: Elementele interactive sunt marcate cu atribute ARIA (aria-hidden=“true”, role=“button”, tabindex=“0”). Contrastul textului, în special cel pentru formule, este aliniat la standardele WCAG 2.1, asigurându-se că baza de date teoretică poate fi parcursă eficient și de către utilizatorii care se bazează pe screen-readere din cauza deficiențelor de vedere majore.
Cerinte sistem
windows 10/11 si/sau web
Realizatori
Ioan-Octavian Calea
- Scoala: Colegiul National “Scoala Centrala”
- Clasa: 11
- Judet: București
- Oras: Bucuresti
Alexis Paulian
- Scoala: Colegiul National Scoala Centrala Bucuresti
- Clasa: 11
- Judet: București
- Oras: Bucharest
Screenshots


