Files
heval/docs/requirements.md
2025-07-15 22:51:37 +02:00

141 lines
4.2 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📄 Heval Light Requirements Document
## 1. Überblick
**Heval Light** ist eine persönliche Assistenten-App für iOS und Android, die Nutzern hilft, ihren Alltag zu organisieren.
Die App bietet **Kalender- und Erinnerungsfunktionen**, erkennt **Wohn- und Arbeitsorte**, und soll langfristig durch **Sprachsteuerung und KI-Integration** zu einem intelligenten Begleiter werden.
---
## 2. Zielgruppe
- **Studierende** → Verwaltung von Uni-Terminen, Vorlesungen, Deadlines
- **Arbeitnehmer:innen** → Meetings, Arbeitswege, Standortinformationen
- **Privatpersonen** → Erinnerungen, Einkaufslisten, persönliche Termine
---
## 3. Ziele der App
- Einen **zentralen Assistenten** für Termine, Erinnerungen & Standortinfos bieten
- Daten **lokal & sicher** speichern (kein Zwang zu Cloud-Diensten)
- Einfacher Login & **biometrische Authentifizierung**
- Integration von **Standort, Spracheingabe & KI-Unterstützung**
---
## 4. Benutzerrollen
1. **Registrierter Nutzer**
- Kann ein Profil erstellen (Name, E-Mail, Wohnort, Arbeitsplatz/Schule/Uni)
- Kann Kalender & Erinnerungen verwalten
- Kann optional **Sprachbefehle** nutzen
- Kann Face ID / Touch ID für Login verwenden
2. **Später: KI-Assistent / Hintergrundlogik**
- Erkennt wiederkehrende Muster (z.B. Standort, Termine)
- Schlägt automatische Aktionen vor
---
## 5. Muss-Features (Minimum Viable Product)
-**Registrierung & Login**
- Vorname, Nachname, E-Mail, Passwort
- Speicherung in **SQLite**
- Biometrische Authentifizierung (Face ID/Touch ID)
-**Kalender & Erinnerungen**
- Zugriff auf **iOS Kalender/Erinnerungen**
- Manuelles Hinzufügen von Terminen in SQLite
- Anzeige in einer FlatList
-**Benutzer-Session**
- Speicherung via **AsyncStorage**
---
## 6. Soll-/Kann-Features (geplante Erweiterungen)
- **GPS-Integration (expo-location)**
- Automatische Erkennung von Wohnort & Arbeitsplatz
- Reverse Geocoding → Adresse automatisch eintragen
- **Sprachsteuerung (react-native-voice)**
- Termine & Erinnerungen per Sprache hinzufügen
- Sprachausgabe für wichtige Benachrichtigungen
- **Push-Notifications**
- Erinnerungen & Kalenderbenachrichtigungen
- **AI-Integration (OpenAI API)**
- Chatbot für Terminorganisation & Erinnerungen
- Intelligente Vorschläge (z.B. „Soll ich dich morgen an den Termin erinnern?“)
- **Mehrsprachigkeit (Deutsch/Englisch)**
---
## 7. Use Cases
### UC1: Registrierung mit Standort
1. Nutzer öffnet die App und wählt _Registrieren_
2. Gibt Name, E-Mail, Passwort ein
3. Optional → Klickt auf **„Aktuellen Standort übernehmen“** → App füllt Wohnort automatisch
4. Optional → Gibt Arbeitsplatz/Uni/Schule ein
5. Daten werden in SQLite gespeichert
### UC2: Termin/Erinnerung hinzufügen
1. Nutzer öffnet den Kalender
2. Klickt auf „+“ → Modal öffnet sich
3. Trägt Titel, Start-/Endzeit ein → Speichern in SQLite
4. Termin wird in Liste angezeigt
### UC3: Termin per Spracheingabe
1. Nutzer klickt auf Mikrofon-Icon
2. Spricht „Meeting mit Max am Freitag 15 Uhr“
3. App erkennt Text & speichert automatisch als neuen Termin
### UC4: Login mit Face ID
1. Nutzer öffnet die App
2. App fragt automatisch Face ID/Touch ID an
3. Nach erfolgreicher Authentifizierung wird der Nutzer direkt eingeloggt
---
## 8. Technische Anforderungen
- **Framework:** React Native + Expo (Managed Workflow)
- **Datenbank:** SQLite (lokal)
- **Geräte-Features:**
- Face ID / Touch ID → `expo-local-authentication`
- Kalenderzugriff → `expo-calendar`
- Standort → `expo-location`
- Spracheingabe → `react-native-voice`
- **Speicher:** AsyncStorage für Sessions
- **Geplant:** KI-Integration über OpenAI API
---
## 9. Sicherheits- und Datenschutzaspekte
- Alle Daten bleiben **lokal auf dem Gerät**
- Keine Cloud-Verbindung notwendig
- Geplant: Verschlüsselte Speicherung für sensible Daten (SecureStore)
---
## 10. Erfolgskriterien
- Nutzer kann ohne Internet registrieren & anmelden
- Termine & Erinnerungen lassen sich manuell hinzufügen
- Standort kann automatisch erfasst werden
- Biometrische Anmeldung funktioniert zuverlässig
- Später: Spracheingabe & KI-Assistent integrierbar
---