Wahlfach App ist ein Full Stack Webapplikation. Hierbei können mehrere Rollen, (Studenten, Dozenten und Admins) Projekte erstellen, verwalten und wählen. Das System ist aufgeteilt in Präsentationsschicht, Serviceschicht, Business Logik Schicht und Datenbank Schicht. Als Speicher in der Datenbank Schicht dient eine relationale MySQL Datenbank welche über ein Python Backend angesprochen wird. Hierbei kommt das mysql connector package zum einsatz. Um die Wartbarkeit zu erhöhen wird in allen Schichten auf Business Objekt Klassen zurückgegriffen. Business Logik anfragen werden im Backend in der Business Logik Schicht verarbeitet. Der Service Layer stellt die Resourcen mithilfe eines Flask Web Server zur verfügung. Abgesichert werden die einzelnen Methoden durch einen Security Decorator mit dem google-auth package. Dargestellt werden die unterschiedlichen Ressourcen über ein JavaScript frontend erstellt mithilfe der React Library. Das React Frontend sendet seine API Anfragen an das Python Backend.
Informationen finden Sie in:
- INSTALLATION.md welche alle Informationen für eine erfolgreiche Installation in ihrerer Entwicklungsumgebung enthält
- RUN.md baut auf INSTALLATION.md auf und erklärt den start der Datenbank, des Backends sowie des Frontends.
- /src: In diesem Verzeichnis finden Sie den Source Code des Projekts.
- /frontend: In diesem Verzeichnis finden Sie separat vom restlichen Source Code den Source Code des Frontend.
- /mysql: Hier finden Sie mySQL-spezifisches Material wie z.B. den Dump, um eine Datenbankinstanz zu erstellen