Informatii generale
- Categorie: Web
- Judetul: Brăila
- Surse: GitHub - Mario270creator/chimie-reactor-quest · GitHub
- Homepage: https://chimie-reactor-quest.onrender.com/
Descriere
Chimie Academy este o platformă web pe care am creat-o pentru a-i ajuta pe elevii de gimnaziu și liceu să înțeleagă chimia mult mai ușor și într-un mod interactiv, nu doar tocind formule. Ne-am dorit să combinăm teoria plictisitoare din manuale cu experimentul digital. Site-ul are un sistem complet de conturi pentru Elevi și Profesori. Ca elev, poți să intri, să parcurgi lecții bine structurate, să îți testezi cunoștințele prin quiz-uri și să îți vezi progresul în timp real, ba chiar să concurezi cu ceilalți colegi într-un clasament general (leaderboard). Profesorii au și ei rolul lor, putând să își gestioneze clasele direct din platformă. Inima proiectului nostru este Laboratorul Virtual, unde am pus la punct trei lucruri mari:Un Tabel Periodic Interactiv: Apeși pe orice element și vezi instant toate detaliile științifice de care ai nevoie (număr atomic, masă etc.). Un Simulator de Reacții Chimice: Utilizatorul își alege reactanții, iar site-ul nu doar că îi generează ecuația chimică corectă, dar pornește și animații vizuale interactive (bule, vapori, schimbări de culoare sau precipitate), fix ca într-un experiment real din eprubetă. Un Calculator de Masă Molară: Te ajută să calculezi rapid masele pentru diverse formule chimice.
Tehnologii
Din punct de vedere tehnic, am structurat aplicația în două părți mari: backend-ul (logica din spate în Python) și frontend-ul (interfața interactivă în HTML, CSS și JavaScript). Pentru a dezvolta și asambla toate aceste componente mai rapid și mai eficient, am folosit ca mediu de lucru editorul Cursor. Acesta ne-a servit ca asistent de programare, ajutându-ne să scriem codul mai curat, să testăm funcțiile în timp real și să reparăm rapid erorile de sintaxă care apăreau pe parcurs. Backend-ul (Python & Flask)Fișierul de bază este app.py, de unde controlăm toate rutele și paginile site-ului. Aici este scrisă logica pentru crearea conturilor, verificarea autentificării și logarea elevilor sau profesorilor. Tot în acest script se află și o funcție care criptează parolele (hashing), astfel încât să nu fie salvate în clar, din motive de securitate. Toate informațiile (utilizatori, clase, lecții și scoruri) sunt salvate într-o bază de date relațională SQLite, localizată în folderul instance/chimie_reactor_quest.db. Pentru pornire rapidă pe server sau în rețeaua locală, am configurat scripturi de tip .bat și .sh. Frontend-ul (Interfața și Laboratorul)Paginile vizuale folosesc fișiere HTML combinate cu șabloane Jinja2, ceea ce ne permite să preluăm variabilele din Python și să le afișăm direct în pagină (cum ar fi numele utilizatorului logat sau punctajele din clasament). Design-ul și așezarea în pagină sunt făcute cu CSS clasic (style.css). Laboratorul virtual din laborator.html funcționează pe bază de JavaScript nativ. Tabelul periodic este generat prin funcția buildPeriodicTable, iar detaliile elementelor apar pe ecran când JS-ul detectează un click pe celula respectivă. Simulatorul de reacții chimice folosește fișierul lab-enhancements.js pentru a citi ce substanțe a selectat utilizatorul și a valida dacă reacția este corectă. Efectele vizuale de eprubetă (bulele, spuma sau depunerile) sunt realizate prin animații și stiluri CSS pe care le-am definit în fișierul lab-enhancements.css
Cerinte sistem
Sistem de operare: Windows 10/11, Linux (Ubuntu/Debian) sau macOS. Procesor: Intel Core i3 / AMD Ryzen 3 (sau echivalent). Memorie RAM: Minimum 4 GB RAM.Spațiu pe disc: Minimum 50 MB liberi (pentru codul sursă, biblioteci și fișierul bazei de date SQLite). Software necesar: * Python 3.10 sau o versiune mai nouă instalată în sistem. Drepturi de administrator/utilizator pentru a putea rula fișierele de pornire rapidă scriptate de noi (.bat pentru Windows sau .sh pentru Linux/macOS). Conexiune la internet: Nu este obligatorie pentru rularea locală (toate dependențele mari precum Flask, Jinja2 și stilurile sunt incluse în folderul proiectului sau se pot instala offline).
Cerințe pentru utilizator (Client / Browser)Pentru oricine accesează aplicația direct din browser: Dispozitiv: PC, Laptop, Tabletă sau Smartphone. Software: Orice browser web modern și actualizat (Google Chrome, Mozilla Firefox, Microsoft Edge, Safari). Setări browser: JavaScript activat în browser (obligatoriu pentru funcționarea Tabelului Periodic și a Simulatorului de Reacții din Laboratorul Virtual).
Realizatori
Dan Mario Andronic
- Scoala: Colegiul Național Gheorghe Munteanu Murgoci
- Clasa: 9
- Judet: Brăila
- Oras: Braila
Alexandru Teodorescu
- Scoala: Colegiul National Gheorghe Munteanu Murgoci
- Clasa: 10
- Judet: Brăila
- Oras: Braila
Screenshots


