diff --git a/README.md b/README.md index 8200fff..4f9a06d 100644 --- a/README.md +++ b/README.md @@ -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. \ No newline at end of file +## 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. \ No newline at end of file