Readme aktualisiert

This commit is contained in:
Klaas Börgmann 2024-09-24 15:56:23 +02:00
parent 54abc3956a
commit c1329d38ed
1 changed files with 41 additions and 32 deletions

View File

@ -1,51 +1,60 @@
**Server README**
================
# Server README
**Übersicht**
------------
## Ü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.
**Anforderungen**
---------------
## Zukünftige Funktionen
* Node.js (Version 14 oder höher)
* Express.js (Version 4 oder höher)
* PostgreSQL-Datenbank (mit pg-Modul)
### Funtionen aus Version 1
**Konfiguration**
----------------
- Anwesenheit
- geleitete Spiele
- Riegenzuordnung
* Die Datenbankverbindung wird über Umgebungsvariablen konfiguriert (siehe `.env`-Datei).
* Der Server läuft standardmäßig auf Port 3000.
### Login für Mitglieder
**API-Endpunkte**
-----------------
Mitglieder können ihre eigenen Daten bearbeiten und den eigenen Fortschritt anzeigen.
* `/auth/register`: Registrierung eines neuen Benutzers
* `/auth/login`: Anmeldung eines bestehenden Benutzers
* `/mitglieder`: Geschützte Route für autorisierte Benutzer
### Fortschrittsanzeige für Mitglieder
**Middleware**
-------------
Ü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.
* `authenticateToken`: Überprüft den JWT-Token in der Authorization-Header
### installation
**Datenbank**
------------
Website mit Script zum erstellen der .env Datei sowie der Tabellen und eines Admin-Benutzers.
* Die Datenbank wird mit dem pg-Modul verbunden.
* Die Tabellen werden automatisch erstellt, wenn der Server gestartet wird.
## Anforderungen
**Starten des Servers**
----------------------
- Node.js (Version 14 oder höher)
- Express.js (Version 4 oder höher)
- PostgreSQL-Datenbank (mit pg-Modul)
* `npm start` oder `node server/app.js`
## Konfiguration
**Hinweis**
---------
- Die Datenbankverbindung wird über Umgebungsvariablen konfiguriert (siehe `.env`-Datei).
- Der Server läuft standardmäßig auf Port 3000.
* Bitte stellen Sie sicher, dass Sie die `.env`-Datei mit Ihren eigenen Datenbankzugangsdaten konfiguriert haben.
* Bitte beachten Sie, dass dies ein Beispielprojekt ist und Sie es an Ihre eigenen Bedürfnisse anpassen sollten.
## 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.