fulcrum1991 / Quiz-App

0 stars 0 forks source link

README

Quiz-App

Willkommen zum Quiz-App-Projekt im Kurs ISEF der IU. Dieses Dokument gibt einen Überblick über die Dokumentation des Produkts und dessen Entwicklung.

App und Teaminformation App Name : Quiz-App Auftraggeber : IU
Development Team :

Entwicklungsumgebung:

Bereitstellungsumgebung:

Frameworks und Bibliotheken

Beschreibung der Projektentwicklung Das Projekt IU-Quiz ist eine Quiz-Anwendung, die in Django, ein leistungsfähiges Python-Framework für webbasierte Anwendungen, implementiert ist. Im Projekt sind die Datenmodelle, die logischen Ansichten und die HTML-Vorlagen in separaten Modulen gespeichert, die der Django-eigenen Model-View-Template (MVT) Architektur entsprechen. Die Anwendung nutzt zudem HTMX - eine moderne HTML-basierte Technologie, die es ermöglicht, AJAX-Aufrufe, CSS Transitionen, WebSockets und Server Sent Events direkt im HTML-Markup zu handhaben. Das Projekt verwendet auch eine sorgfältige Branching-Strategie für die Versionskontrolle: Der main-Branch enthält den stabilen Code für die Produktion. Der develop-Branch ist die aktive Entwicklungsumgebung. Hier werden neue Feature-Branches erstellt und wieder zusammengeführt. Das Projekt ist mittels eines Web Server Gateway Interface (wsgi.py) mit einem Webserver verknüpft. Konfigurationsdetails sind in der Datei settings.py enthalten und URL-Routing wird in urls.py geregelt.

Branching Strategie

Das Projekt verwendet eine sorgfältige Branching-Strategie für die Versionskontrolle:

Haupt-Branches:


Strukturbeschreibung

Das Django-Projekt gliedert sich in die folgenden Apps:

Nachfolgend sind die wichtigsten Datei des Projekts beschrieben.

HTML-Vorlagen, die in Django zum Erzeugen von HTML-Antworten verwendet werden, befinden sich im templates-Verzeichnis.

wichtige wiederkehrende Dateien

Diese Dateien sind u.a. Bestandteil jeder App

UserManagement

Diese App behandelt alles rund um das Management von Benutzerprofilen. Dazu gehören u.a.:

Dazugehörige Wireframes

Library

Diese App behandelt das Darstellen und Managen von Aufgaben für das Quiz. U.a.:

Dazugehörige Wireframes

Singleplayer

Diese App behandelt das Darstellen und Managen von Quiz' im Einzelspielermodus. U.a.:

Dazugehörige Wireframes

Multiplayer

Diese App behandelt das Darstellen und Managen von Quiz' im Mehrspielermodus. U.a.:

Templates

Der Template-Ordner in Django-Projekten wird verwendet, um HTML-Vorlagen zu speichern, die das Layout und Design der Website definieren. In diesem Projekt enthält der Template-Ordner Vorlagen für folgende Anteile:

Diese HTML-Dateien arbeiten sowohl mit Django-Template-Funktionen, sowie HTMX, die das dynamische Erstellen von HTML-Inhalten durch Einbinden von Django-Variablen und -Funktionen ermöglichen.