OLDI - Utilitar - București - Lucrari 2020 Nationala

Informatii generale

Descriere

O interfata grafica pentru vizualizarea si administrarea bazei de date a unei biblioteci.
OLDI are scopul de a usura crearea si stocarea informatiilor legate de inchirierea cartilor de la biblioteca.

In aplicatie sunt stocate informatiile despre elevi, carti si inchirierile pe care acestia le realizeaza, putand fi vizualizate sub forma unor tabele. Acestea sunt stocate local, intr-o baza de date sqlite3, care nu se poate corupe atat de usor. De asemenea, aplicatia creeaza backup-uri saptamanale la baza de date si exista optiunea de a importa date direct din excel in baza de date.

Bibliotecarul poate cauta informatii despre cartile, elevii si inchirierile din baza de date, folosind campurile de text specifice si aplicand filtrele corespunzatoare (ex: cartile pot fi cautate dupa titlu si autor, elevii dupa nume si numar de telefon).

Interfata este simpla si intuitiva - 3 tab-uri (carti, elevi, inchirieri), fiecare tab avand functionalitatile corespunzatoare.

Tehnologii

Aplicatia este scrisa in Python 3. Modulul PyQt5 permite folosirea popularului framework Qt, pastrand in acelasi timp utilitatile modulelor din Python.

Biblioteci si framework-uri folosite:

  • Sqlite3 - baza de date locala
  • DB-Api - interfata standard pentru Python, prin care comunica cu baza de date sqlite
  • PyQt5 - libraria prin care am creat interfata grafica, impreuna cu aplicatia Qt Designer, pentru a crea widget-uri custom.
  • fbs - Fman build system, un modul python care creeaza executabile standalaone pentru Windows, Mac si Linux. Astfel, aplicatia poate fi instalata pe aceste sisteme de operare, fara a mai fi nevoie de un mediu de dezvoltare Python.

Cerinte sistem

Aplicatia a fost dezvoltata si testata pe Windows 10, dar poate fi compilata si pe Linux/MacOS, folosind build-systemul fbs.
Pentru compilare este necesar un mediu de dezvoltare Python, cu bibliotecile:

  • PyQt5 = 5.9.2
  • PyInstaller = 3.4
  • fbs = 0.8.5

Realizatori

Andrei Niculae

  • Scoala: Colegiul National de Informatica “Tudor Vianu”
  • Clasa: 12
  • Judet: București
  • Oras: București

Screenshots