61 lines
1.9 KiB
Markdown
61 lines
1.9 KiB
Markdown
|
|
|
|
# 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
|
|
- -Spielewiki
|
|
- 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. |