managarten/apps/context/apps/mobile/NextSteps.md
Till-JS bb0e0cf5cb 🚚 feat(context): integrate context app into monorepo
Restructure the context app (formerly basetext) to follow the monorepo
pattern with proper workspace configuration.

Changes:
- Move app files to apps/context/apps/mobile/
- Rename package to @context/mobile
- Update bundle ID to com.manacore.context
- Create pnpm-workspace.yaml for project workspace
- Add dev scripts to root package.json
- Update CLAUDE.md with project documentation

The app structure is prepared for future web/backend additions.

Note: Existing TypeScript errors in the original codebase are preserved.
These should be fixed in a follow-up PR.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 15:09:04 +01:00

282 lines
8.8 KiB
Markdown

# BaseText - Nächste Schritte
## ⚠️ WICHTIG: RevenueCat-Integration für Produktion vorbereiten
Für die Produktion müssen folgende Änderungen an der RevenueCat-Integration vorgenommen werden:
1. **API-Key aus Umgebungsvariablen laden**
- Aktuell ist der API-Key direkt im Code gesetzt, was für die Entwicklung funktioniert
- Für die Produktion muss der Code in `services/revenueCatService.ts` geändert werden:
```typescript
// Ändern von:
const REVENUECAT_API_KEY_IOS = 'appl_kRiosNzSxUFTkqPhQEFMVyFWtPM';
// Zurück zu:
const REVENUECAT_API_KEY_IOS = process.env.EXPO_PUBLIC_REVENUECAT_API_KEY_IOS || '';
```
2. **Log-Level reduzieren**
- Debug-Logging für die Produktion deaktivieren:
```typescript
// Ändern von:
Purchases.setLogLevel(Purchases.LOG_LEVEL.DEBUG);
// Zu:
Purchases.setLogLevel(Purchases.LOG_LEVEL.ERROR);
```
3. **Testkäufe durchführen**
- Vor dem Release alle In-App-Käufe (Abonnements und Einmalkäufe) in der Sandbox-Umgebung testen
- Überprüfen, ob Credits korrekt gutgeschrieben werden
- Sicherstellen, dass Transaktionen in der Datenbank protokolliert werden
---
Nachdem wir erfolgreich die Authentifizierung mit Supabase implementiert haben, können wir mit der Entwicklung der Kernfunktionalitäten der BaseText-App fortfahren. Dieser Fahrplan beschreibt die empfohlenen nächsten Schritte in der Reihenfolge ihrer Priorität.
## 1. Datenbank-Setup vervollständigen
### 1.1 Tabellen erstellen
- Erstellen der fehlenden Tabellen in Supabase gemäß dem Datenbankschema:
- `users` (teilweise durch Auth bereits vorhanden)
- `spaces`
- `space_members`
- `documents`
- `document_space`
### 1.2 Row Level Security (RLS) implementieren
- Sicherheitsrichtlinien für jede Tabelle definieren
- Berechtigungskonzept umsetzen (Besitzer, Editoren, Betrachter)
- Sicherstellen, dass Benutzer nur auf ihre eigenen Daten und die für sie freigegebenen Spaces zugreifen können
### 1.3 Indizes und Constraints
- Primärschlüssel und Fremdschlüsselbeziehungen definieren
- Indizes für häufig abgefragte Felder erstellen
- Unique-Constraints für E-Mail-Adressen und andere eindeutige Werte
## 2. Space-Verwaltung implementieren
### 2.1 Space-Service erstellen
- Funktionen zum Abrufen, Erstellen, Aktualisieren und Löschen von Spaces
- Integration mit Supabase-Client
### 2.2 Space-Übersichtsseite
- Liste aller Spaces, auf die der Benutzer Zugriff hat
- Filterfunktionen (nach Name, Erstellungsdatum, etc.)
- Sortieroptionen
### 2.3 Space-Detailseite
- Anzeige aller Informationen zu einem Space
- Liste der enthaltenen Dokumente
- Verwaltung von Space-Mitgliedern
### 2.4 Space-Erstellungs- und Bearbeitungsformular
- Formular zum Erstellen neuer Spaces
- Formular zum Bearbeiten bestehender Spaces
- Validierung der Eingaben
### 2.5 Mitgliederverwaltung
- Einladen neuer Mitglieder per E-Mail
- Rollenverwaltung (Besitzer, Editor, Betrachter)
- Entfernen von Mitgliedern
## 3. Dokumentenverwaltung implementieren
### 3.1 Dokument-Service erstellen
- Funktionen zum Abrufen, Erstellen, Aktualisieren und Löschen von Dokumenten
- Integration mit Supabase-Client
### 3.2 Dokument-Übersichtsseite
- Liste aller Dokumente, auf die der Benutzer Zugriff hat
- Filterfunktionen (nach Typ, Erstellungsdatum, etc.)
- Sortieroptionen
### 3.3 Dokument-Detailseite
- Anzeige aller Informationen zu einem Dokument
- Texteditor für den Inhalt
- Metadaten-Verwaltung
### 3.4 Dokument-Erstellungs- und Bearbeitungsformular
- Formular zum Erstellen neuer Dokumente
- Formular zum Bearbeiten bestehender Dokumente
- Validierung der Eingaben
### 3.5 Dokumentimport
- Import von Dokumenten aus verschiedenen Quellen (Dateien, URLs, etc.)
- Unterstützung verschiedener Formate (Text, Markdown, etc.)
## 4. KI-Integration
### 4.1 KI-Service erstellen
- Integration mit KI-APIs (OpenAI, etc.)
- Funktionen für Textanalyse und -generierung
### 4.2 Analyse-Funktionalität
- Benutzeroberfläche für die Konfiguration von Analysen
- Durchführung von Analysen auf ausgewählten Dokumenten
- Speicherung der Analyseergebnisse als neue Dokumente
### 4.3 Generierungs-Funktionalität
- Benutzeroberfläche für die Konfiguration von Textgenerierungen
- Durchführung von Textgenerierungen basierend auf ausgewählten Dokumenten
- Speicherung der generierten Texte als neue Dokumente
## 5. Benutzeroberfläche und Benutzererfahrung verbessern
### 5.1 Responsive Design
- Sicherstellen, dass die App auf verschiedenen Geräten gut funktioniert
- Optimierung für verschiedene Bildschirmgrößen
### 5.2 Dunkelmodus
- Implementierung eines Dunkelmodus
- Anpassung aller UI-Komponenten
### 5.3 Mention-Funktionalität verbessern
- **MENTION VERBESSERN: VORSCHAU ENTFERNEN, direkt nach @ Zeichen etwas anzeigen**
- Sofortige Anzeige von Vorschlägen direkt nach der Eingabe des @-Zeichens oder [[-Sequenz
- Entfernung der separaten Vorschau-Komponente zugunsten einer direkten Inline-Anzeige
- Behebung des Fokus-Problems im MentionTextInput
- Aktuell verliert das Eingabefeld nach dem Einfügen einer Mention den Fokus und der Cursor wird ans Ende des Textes gesetzt
- Eine verbesserte Implementierung könnte eine spezialisierte Web-Textarea oder eine Drittanbieter-Bibliothek für Rich-Text-Editing verwenden, die bessere Cursor-Kontrolle bietet
- Optimierung der Dropdown-Positionierung
### 5.3 Benachrichtigungen
- Benachrichtigungen für wichtige Ereignisse (neue Einladungen, Änderungen an Dokumenten, etc.)
- Push-Benachrichtigungen für mobile Geräte
### 5.4 Offline-Unterstützung
- Lokale Speicherung von Daten für Offline-Zugriff
- Synchronisierung bei Wiederherstellung der Verbindung
## 6. Erweiterte Funktionen
### 6.1 Versionierung
- Implementierung der Dokumentversionierung
- Anzeige der Versionshistorie
- Wiederherstellung früherer Versionen
### 6.2 Suche
- Volltext-Suche über alle Dokumente
- Filteroptionen für die Suche
- Hervorhebung von Suchergebnissen
### 6.3 Tagging
- System zum Hinzufügen von Tags zu Dokumenten
- Filterung und Suche nach Tags
### 6.4 Kollaboration
- Echtzeit-Kollaboration an Dokumenten
- Kommentarfunktion
- Änderungsverfolgung
### 6.5 Export/Import
- Export von Dokumenten in verschiedene Formate
- Bulk-Import von Dokumenten
## 7. Tests und Qualitätssicherung
### 7.1 Unit-Tests
- Tests für alle wichtigen Funktionen und Komponenten
- Automatisierte Testläufe
### 7.2 Integration-Tests
- Tests für die Integration verschiedener Komponenten
- Tests für die Integration mit Supabase
### 7.3 End-to-End-Tests
- Tests für vollständige Benutzerworkflows
- Automatisierte UI-Tests
### 7.4 Performance-Optimierung
- Identifizierung und Behebung von Performance-Problemen
- Optimierung der Ladezeiten
## 6. Erweiterte Funktionen implementieren
### 6.1 Verschiedene Eingabequellen integrieren
- YouTube-Video-Transkriptionen importieren
- PDF-Dokumente importieren und analysieren
- Integration mit externen Diensten (Google Drive, Notion, etc.)
### 6.2 Verschiedene Exportformate anbieten
- Export als PDF mit anpassbarem Layout
- Export als DOCX (Microsoft Word)
- Export als Rich-Text-Format für die Weiterverarbeitung
### 6.3 Erweiterte Suchfunktionen
- Implementierung einer Vektordatenbank für semantische Suche
- Ähnlichkeitssuche für Dokumente und Textabschnitte
- Filterung nach verschiedenen Kriterien (Datum, Autor, Tags, etc.)
### 6.4 Veröffentlichung von Dokumenten
- Öffentliche Freigabe von Dokumenten über einen Link
- Einbetten von Dokumenten in externe Websites
- Berechtigungssystem für öffentliche Dokumente
## 7. Deployment und Veröffentlichung
### 8.1 Vorbereitung für Produktion
- Konfiguration für Produktionsumgebung
- Optimierung von Assets
### 8.2 App Store-Veröffentlichung
- Vorbereitung für iOS App Store
- Vorbereitung für Google Play Store
### 8.3 Monitoring und Logging
- Implementierung von Fehlerüberwachung
- Sammlung von Nutzungsstatistiken
### 8.4 Kontinuierliche Integration und Deployment
- Automatisierung des Build- und Deployment-Prozesses
- Automatisierte Tests vor dem Deployment
## Empfohlene unmittelbare nächste Schritte
1. **Datenbank-Setup**: Erstellen Sie die SQL-Skripte für die Tabellen und RLS-Richtlinien und führen Sie sie in Supabase aus.
2. **Space-Service**: Implementieren Sie den grundlegenden Service zum Verwalten von Spaces.
3. **Space-Übersichtsseite**: Aktualisieren Sie die bestehende Space-Seite, um echte Daten aus Supabase anzuzeigen.
4. **Space-Erstellungsformular**: Implementieren Sie ein Formular zum Erstellen neuer Spaces.
5. **Dokument-Service**: Implementieren Sie den grundlegenden Service zum Verwalten von Dokumenten.
Diese ersten Schritte werden eine solide Grundlage für die weitere Entwicklung der BaseText-App schaffen und es ermöglichen, schnell einen funktionalen Prototyp zu erstellen, der die Kernfunktionalitäten demonstriert.