Skip to content

Entwicklung eines CO2 Rechners für TU Einheiten an der TU Darmstadt.

License

Notifications You must be signed in to change notification settings

felix-marx/CO2-Rechner-TU-Darmstadt-Frontend

Repository files navigation

Frontend des CO2 Rechners der TU Darmstadt

Hinweis: Das Projekt wurde auf GitLab verschoben: GitLab

Hierbei handelt es sich um das Frontend des CO2 Rechners, welcher im Rahmen des Bachelorpraktikums für das Büro für Nachhaltigkeit und das Institut für Fluidsystemtechnik entwickelt wurde.

Dieses Projekt ermöglicht eine Erfassung von CO2 Emissionen von TU Einheiten und die anschließende Auswertung.

Implementierte Funktionen

  • Nutzendenverwaltung
  • Umfrageerstellung für Verantwortliche von TU Einheiten
  • Befragung von Mitarbeitenden der eigenen TU Einheit
  • Verwaltung und Bearbeitung von erstellten Umfragen
  • Auswertung von Umfragen und Teilen der Umfrageergebnisse
  • Administrative Schnittstelle an Datenbank zum Eintragen von Daten
  • Einsicht aller vorhandenen Umfragen durch administrative Benutzende

Verwandte Projekte

Das Frontend kann nicht unabhängig betrieben werden.

Das Backend, welches als Controller und Schnittstelle zur Datenbank dient, ist hier einsehbar: Github
Die Interaktionen zwischen Frontend und Backend sind in einer REST artigen API definiert, welche hier eingesehen werden kann: Github

Abhängigkeiten

Alle Abhängigkeiten des CO2-Rechners sind in der package.json zu finden. Die wichtigsten Abhängigkeiten werden im folgenden aufgeführt:

Entwicklungssetup

Das Projekt wurde mit der Vite 5.3.5 mit Node.js v20.16.0 (LTS) erstellt.

Im Backend Repository ist eine Docker Compose File gegeben, die folgende Container enthält:

  • MongoDB als Datenbank
  • NGINX als Webserver und Reverse Proxy
  • Keycloak zur Authentifizierung und Kommunikation mit externen Diensten
  • Postgres als Datenbank für Keycloak

Das Frontend und Backend müssen unabhängig von der Docker Compose lokal gestartet werden. Die default Konfiguration erwartet das Frontend unter localhost:8081 und das Backend unter localhost:3000. Die Webanwendung ist dann per nginx unter localhost:8080 zu erreichen.

Installation von allen Abhängigkeiten über Paketverwaltung npm.

npm install

Entwicklung mit Hot Reload der Anwendung

npm run dev

Build der Anwendung

npm run build

Linter zur Entwicklung

In der Entwicklung haben wir den Linter ESLint verwendet, welcher Javascript code analysiert und gängige Probleme automatisch korrigiert, sodass die Code einer einheitlichen Struktur entspricht.

npm run lint

About

Entwicklung eines CO2 Rechners für TU Einheiten an der TU Darmstadt.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages