← Toate proiectele

Schedule

Sistemul de orar al universității

În producțiev1.0.0
Deschide aplicațiarepo: code4ulbs/schedule (privat)

Descriere

Schedule înlocuiește vechiul sistem de orar și deservește cele 9 facultăți ale ULBS. Administratorii construiesc orarul într-un editor grafic cu drag-and-drop și verificare automată a conflictelor, iar studenții și cadrele didactice îl consultă public, fără autentificare. Aplicația gestionează și sesiunile de examene și înregistrează prezența prin coduri QR. Datele sunt expuse printr-un API REST documentat, folosit de alte aplicații Code4ULBS.

Funcționalități cheie

Screenshots

Editorul de orar
Editorul de orar
Panoul de administrare a resurselor
Panoul de administrare a resurselor

Tehnologii

Frontend

Vue 3TypeScriptVuetifyViteClient API generat din OpenAPI

Backend

PHP 8.2+Laravel 12OpenAPI / Swagger

Date

MySQL 8

Infrastructură

DockerDocker Compose

Arhitectură

Diagrama de arhitectură Schedule

Arhitectură multi-bază de date: fiecare facultate are propria bază, cu o structură standardizată, iar API-ul selectează baza după codul facultății.

Diagrama este generată din cod PlantUML: arch-schedule.puml.

Deployment

Detalii

Roluri și utilizatori

  • Student și cadru didactic (consultare publică)
  • Administrator de facultate
  • Cadru didactic (generare cod QR de prezență)

Integrări

  • Google Workspace (autentificare)
  • ULBS Connect (prezență, orar)
  • Plata cu ora (orar profesori)
  • UMS

Autentificare și securitate

Citirea orarului este publică. Administrarea și generarea codurilor de prezență necesită autentificare Google Workspace; API-ul folosește token-uri și limitare de rată.

Calitate și testare

  • Documentație OpenAPI generată automat
  • Audit al modificărilor
  • Teste automate și CI/CD în GitHub Actions

Cum rulezi local

Responsabili

Contributori

Mulțumim tuturor celor care au contribuit la Schedule.