# Game Collection API Dies ist eine Flask-basierte API zur Verwaltung einer Sammlung von Spielen. Die API ermöglicht das Hinzufügen, Abrufen, Bearbeiten und Löschen von Spielen sowie die Benutzerverwaltung. ## Endpunkte ### Benutzerverwaltung - **POST /users**: Erstellt einen neuen Benutzer (nur für Admins). - **POST /users/login**: Meldet einen Benutzer an und gibt ein JWT-Token zurück. - **GET /users**: Gibt eine Liste aller Benutzer zurück (nur für Admins). - **PUT /users/**: Aktualisiert die Informationen eines Benutzers (nur für Admins). - **DELETE /users/**: Löscht einen Benutzer (nur für Admins). - **PUT /users/change_password**: Ändert das Passwort des angemeldeten Benutzers. Erfordert das aktuelle Passwort und das neue Passwort. ### Spieleverwaltung - **POST /games**: Fügt ein neues Spiel zur Sammlung hinzu. Erfordert ein Bild-URL und den Titel des Spiels. - **GET /games**: Gibt eine Liste aller Spiele in der Sammlung zurück. - **DELETE /games/**: Löscht ein Spiel aus der Sammlung. - **GET /games/search**: Sucht nach Spielen basierend auf einem Suchbegriff. ## Installation 1. Klone das Repository: ```bash git clone cd game_collection ``` 2. Installiere die Abhängigkeiten: ```bash pip install -r requirements.txt ``` 3. Starte die Anwendung: ```bash flask run ``` ## Datenbank Die Anwendung verwendet SQLite zur Speicherung von Benutzern und Spielen. Die Datenbank wird beim ersten Start der Anwendung automatisch erstellt. ## Sicherheit Die API verwendet JWT für die Authentifizierung. Stelle sicher, dass du einen geheimen Schlüssel in deiner Umgebung festlegst, um die Token zu signieren. ## Lizenz Dieses Projekt ist unter der MIT-Lizenz lizenziert.