51 lines
No EOL
1.8 KiB
Markdown
51 lines
No EOL
1.8 KiB
Markdown
# HelpYourNeighbour Projektübersicht
|
|
|
|
## Projektbeschreibung
|
|
HelpYourNeighbour ist ein Backend-System für eine Plattform zur Unterstützung von Nachbarn. Es ermöglicht Nutzern, Hilfeanfragen zu stellen und anzubieten, sowie Deals abzuschließen und Bewertungen auszutauschen.
|
|
|
|
## Hauptfunktionen
|
|
1. **Authentifizierung**: Registrierung und Login
|
|
2. **Hilfeanfragen**: Erstellen und Auflisten von Anfragen
|
|
3. **Angebote**: Erstellen, Verhandeln und Akzeptieren von Angeboten
|
|
4. **Bewertungssystem**: 2-14 Tage Verzögerung für Bewertungen
|
|
5. **Adressmanagement**: Änderung von Adressen per Briefbestätigung
|
|
6. **Kontaktdaten-Austausch**: Nach Deal abgeschlossen
|
|
|
|
## Datenbankschema
|
|
Das System verwendet ein MySQL-Datenbankschema mit folgenden Tabellen:
|
|
- users: Nutzerdaten
|
|
- help_requests: Hilfeanfragen
|
|
- offers: Angebote
|
|
- negotiations: Verhandlungen
|
|
- deals: Abschlüsse
|
|
- contact_exchange_requests: Kontaktanfragen
|
|
- addresses: Adressen
|
|
- address_change_requests: Adressänderungsanfragen
|
|
- reviews: Bewertungen
|
|
|
|
## Technologie Stack
|
|
- Backend: Node.js mit Express
|
|
- Datenbank: MySQL
|
|
- Authentifizierung: JWT
|
|
- Verschlüsselung: AES-256-GCM für sensible Daten
|
|
- Validierung: Zod
|
|
- Tests: Playwright (Integration), Custom (Smoke)
|
|
|
|
## Testumgebung
|
|
- Smoke-Tests funktionieren
|
|
- Integrationstests haben Playwright-Konfigurationsprobleme
|
|
- Docker-basierte Testumgebung vorhanden, aber keine lokale Docker-Installation
|
|
|
|
## Konfiguration
|
|
Die .env.example zeigt die Produktionskonfiguration mit externer Datenbank:
|
|
- DB_HOST=80.74.142.125
|
|
- DB_PORT=3306
|
|
- DB_NAME=helpyourneighbour
|
|
- DB_USER=helpyourneighbour
|
|
- DB_PASSWORD=change-me
|
|
|
|
## Nächste Schritte für Entwicklung
|
|
1. Lokale MySQL-Datenbank einrichten
|
|
2. Docker-Installation prüfen oder installieren
|
|
3. Testumgebung vollständig aufbauen
|
|
4. Integrationstests reparieren |