tkd_neu/README.md

1.9 KiB

Server README

Übersicht

Dieser Server ist eine Webanwendung, die mit Node.js und Express.js erstellt wurde. Er bietet eine API für Benutzerregistrierung und -anmeldung sowie eine geschützte Route für autorisierte Benutzer. Es sollen mehrere Abteilungen abgebildet werden, Mitglieder des Vereins können in mehreren Abteilungen Mitglied sein. Jede_r Übungsleiter_in hat Zugriff auf die eigene Abteilung und die dazugehörigen Mitglieder und deren Notfallkontakte.

Zukünftige Funktionen

Funtionen aus Version 1

  • Anwesenheit
  • geleitete Spiele
  • Riegenzuordnung

Login für Mitglieder

Mitglieder können ihre eigenen Daten bearbeiten und den eigenen Fortschritt anzeigen.

Fortschrittsanzeige für Mitglieder

Übungen, die in der Turnstunde geschafft wurden sollen angezeigt werden. So können zum einen Vertretungs-Helfer sehen, wie der Stand der Riege ist, zum anderen können die Kinder zuhause zeigen, was sie geschafft haben.

installation

Website mit Script zum erstellen der .env Datei sowie der Tabellen und eines Admin-Benutzers.

Anforderungen

  • Node.js (Version 14 oder höher)
  • Express.js (Version 4 oder höher)
  • PostgreSQL-Datenbank (mit pg-Modul)

Konfiguration

  • Die Datenbankverbindung wird über Umgebungsvariablen konfiguriert (siehe .env-Datei).
  • Der Server läuft standardmäßig auf Port 3000.

API-Endpunkte

  • /auth/register: Registrierung eines neuen Benutzers
  • /auth/login: Anmeldung eines bestehenden Benutzers
  • /auth/update: Aktualisierung der Daten eines bestehenden Benutzers
  • /members/all: Alle Mitglieder einer Abteilung
  • /members/new: Erstellung eines neuen Mitglieds

Middleware

  • authenticateToken: Überprüft den JWT-Token in der Authorization-Header

Datenbank

  • Die Datenbank wird mit dem pg-Modul verbunden.

Starten des Servers

Die Anwendung kann mit npm start, node server/app.js oder nodemon server/app.js gestartet werden.