Profile Features: - EditProfileModal for name changes - ChangePasswordModal with validation - DeleteAccountModal with email confirmation Subscription Features: - Full subscription page at /subscription - Plan comparison with monthly/yearly toggle - Stripe Checkout integration - Billing portal access - Invoice history display Credits Features: - Stripe Checkout integration for credit purchases - Loading states and toast notifications - Success/error handling with URL params API Services: - profile.ts: getProfile, updateProfile, changePassword, deleteAccount - subscriptions.ts: getPlans, getCurrentSubscription, createCheckout, etc. - credits.ts: added initiatePurchase method Also includes German/English i18n translations. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
13 KiB
Manacore App - Entwicklungs-Roadmap
Erstellt am: 2024-12-05 Status: Aktive Entwicklung
Inhaltsverzeichnis
Aktueller Stand
Vorhandene Features
| Feature | Status | Beschreibung |
|---|---|---|
| Dashboard | ✅ | Anpassbare Widgets, Drag & Drop |
| Credits-System | ✅ | Übersicht, Transaktionen, Pakete, Stripe-Kauf |
| Teams | ✅ | Team-Verwaltung |
| Organizations | ✅ | Organisations-Verwaltung |
| Settings | ✅ | Benutzereinstellungen |
| Themes | ✅ | Theme-Auswahl |
| Feedback | ✅ | Feedback-Formular |
| Profil | ✅ | Basis-Profil-Ansicht |
| i18n | ✅ | 5 Sprachen (DE, EN, ES, FR, IT) |
| Apps-Übersicht | ✅ | Alle Mana-Apps anzeigen |
Dashboard-Widgets (6 Typen)
| Widget | Status |
|---|---|
| Credits | ✅ |
| Tasks Today | ✅ |
| Calendar Events | ✅ |
| Quick Actions | ✅ |
| Chat Recent | ✅ |
| Contacts Favorites | ✅ |
API-Integrationen
| Service | Status | Datei |
|---|---|---|
| Calendar | ✅ | lib/api/services/calendar.ts |
| Chat | ✅ | lib/api/services/chat.ts |
| Contacts | ✅ | lib/api/services/contacts.ts |
| Todo | ✅ | lib/api/services/todo.ts |
| Zitare | ✅ | lib/api/services/zitare.ts |
| Credits | ✅ | lib/api/credits.ts |
Kritische TODOs (Hohe Priorität)
1. ✅ Stripe-Integration für Credit-Kauf (ERLEDIGT)
Status: Abgeschlossen am 2026-02-13
Implementiert:
- Stripe SDK integrieren (
@stripe/mcpv17.5.0) StripeServicefür PaymentIntent-ErstellungPOST /credits/purchaseEndpoint- Webhook-Handler für
payment_intent.succeeded/payment_intent.payment_failed - Credit-Gutschrift nach erfolgreicher Zahlung (idempotent)
- Stripe MCP Server eingerichtet (OAuth-basiert)
- Test-Pakete angelegt (Starter, Basic, Pro, Ultra)
Credit-Pakete:
| Paket | Credits | Preis | Hinweis |
|---|---|---|---|
| Starter | 100 | €1,00 | 1 Mana = 1 Cent (immer) |
| Basic | 500 | €5,00 | Kein Mengenrabatt |
| Pro | 1.500 | €15,00 | Kein Mengenrabatt |
| Ultra | 5.000 | €50,00 | Kein Mengenrabatt |
Preisregel: 1 Mana = 1 Cent. Keine Rabatte für größere Pakete.
Dateien:
services/mana-core-auth/src/stripe/- Stripe-Moduleservices/mana-core-auth/src/credits/credits.service.ts- Purchase-Methoden
Frontend (Implementiert 2026-02-13):
- Credits-Seite: Stripe Checkout Integration
- Loading-States und Toast-Benachrichtigungen
Noch offen:
- Rechnungs-PDF generieren
2. ✅ App-Config aktualisieren (ERLEDIGT)
Status: Bereits vollständig implementiert
Datei: apps/manacore/apps/web/src/lib/config/apps.ts
Alle Apps konfiguriert:
| Kategorie | Apps |
|---|---|
| Core | manacore |
| AI-Powered | chat, picture, presi, mail |
| Productivity | manadeck, todo, calendar, contacts, finance |
| Utility | clock, zitare, storage, moodlit |
Archivierte Apps (memoro, storyteller) wurden bereits entfernt.
3. ✅ Dashboard-Widgets erweitern (GRÖSSTENTEILS ERLEDIGT)
Status: 14 von 16 Widgets implementiert (Finance + Mail fehlen)
Existierende Widgets (14 Typen):
| Widget | App | Status |
|---|---|---|
| CreditsWidget | mana-core-auth | ✅ |
| TransactionsWidget | mana-core-auth | ✅ |
| ReferralWidget | mana-core-auth | ✅ |
| QuickActionsWidget | core | ✅ |
| TasksTodayWidget | todo | ✅ |
| TasksUpcomingWidget | todo | ✅ |
| CalendarEventsWidget | calendar | ✅ |
| ChatRecentWidget | chat | ✅ |
| ContactsFavoritesWidget | contacts | ✅ |
| ZitareQuoteWidget | zitare | ✅ |
| PictureRecentWidget | picture | ✅ |
| ManadeckProgressWidget | manadeck | ✅ |
| ClockTimersWidget | clock | ✅ |
| StorageUsageWidget | storage | ✅ |
Neue Widgets (2026-02-13):
- StorageUsageWidget - Speichernutzung und letzte Dateien
Noch offen (Backend fehlt noch):
- FinanceBalanceWidget (finance Backend nötig)
- MailInboxWidget (mail Backend nötig)
4. ✅ Profil-Features vervollständigen (Backend ERLEDIGT)
Status: Backend implementiert am 2026-02-13
Implementierte Backend-Endpoints:
| Endpoint | Methode | Beschreibung |
|---|---|---|
/auth/profile |
GET | Profil-Daten abrufen |
/auth/profile |
POST | Profil aktualisieren (Name, Bild) |
/auth/change-password |
POST | Passwort ändern (mit aktuellem Passwort) |
/auth/account |
DELETE | Konto löschen (Soft-Delete mit Passwort-Bestätigung) |
Feature-Status:
| Feature | Backend | Frontend | Priorität |
|---|---|---|---|
| Profil bearbeiten | ✅ | ❌ | Hoch |
| Passwort ändern | ✅ | ❌ | Hoch |
| Konto löschen | ✅ | ❌ | Mittel |
| Avatar hochladen | ✅ | ❌ | Niedrig |
| 2FA aktivieren | ❌ | ❌ | Niedrig |
Dateien:
services/mana-core-auth/src/auth/auth.controller.ts- Endpointsservices/mana-core-auth/src/auth/services/better-auth.service.ts- Service-Methodenservices/mana-core-auth/src/auth/dto/update-profile.dto.ts- Profil-Update DTOservices/mana-core-auth/src/auth/dto/change-password.dto.ts- Passwort-Ändern DTOservices/mana-core-auth/src/auth/dto/delete-account.dto.ts- Konto-Löschen DTO
Frontend (Implementiert 2026-02-13):
- Profil-Edit Modal erstellt (
EditProfileModal.svelte) - Passwort-Ändern Dialog erstellt (
ChangePasswordModal.svelte) - Konto-Löschung mit Bestätigung (
DeleteAccountModal.svelte) - Avatar-Upload mit S3/MinIO Integration (noch offen)
Mittlere Priorität
5. Benachrichtigungen/Notifications
Beschreibung: Zentrales Benachrichtigungssystem für alle Apps
Use Cases:
- Kalender-Erinnerungen (15 min vor Termin)
- Todo-Deadlines (Heute fällig)
- Credit-Warnungen (< 10 Credits)
- Neue Chat-Nachrichten
- Manadeck (Karten zum Lernen)
Aufgaben:
- Notification-Service erstellen
- Push-Notification Setup (Web Push API)
- Notification-Center UI
- Einstellungen pro Notification-Typ
- Backend: Notification-Queue
Geschätzter Aufwand: 3-5 Tage
6. ✅ Subscription/Plan-Management (Backend ERLEDIGT)
Status: Backend implementiert am 2026-02-13
Implementiert:
- DB-Schema:
subscriptions.plans,subscriptions.subscriptions,subscriptions.invoices SubscriptionsServicemit Checkout, Portal, Cancel, ReactivateSubscriptionsControllermit REST-Endpoints- Stripe Checkout Session für Subscriptions
- Stripe Customer Portal Integration (Self-Service Billing)
- Webhook-Handler für Subscription/Invoice Events
- Pläne angelegt (Free, Pro, Enterprise)
Subscription-Pläne:
| Plan | Mana/Monat | Monatlich | Jährlich | Features |
|---|---|---|---|---|
| Free | 150 | €0 | €0 | Basis-Features, Community Support |
| Pro | 1.500 | €9,99 | €99,90 | Alle Features, Priority Support, API |
| Enterprise | 10.000 | €49,99 | €499,90 | SSO, Audit Logs, SLA, Dedicated Support |
API-Endpoints:
GET /api/v1/subscriptions/plans # Alle Pläne
GET /api/v1/subscriptions/current # Aktuelles Abo
POST /api/v1/subscriptions/checkout # Stripe Checkout starten
POST /api/v1/subscriptions/portal # Billing Portal öffnen
POST /api/v1/subscriptions/cancel # Kündigen
POST /api/v1/subscriptions/reactivate # Reaktivieren
GET /api/v1/subscriptions/invoices # Rechnungen
Frontend (Implementiert 2026-02-13):
- Plan-Übersicht Seite im Frontend (
/subscription) - Plan-Vergleichs-UI mit monatlich/jährlich Toggle
- Stripe Checkout Integration für Subscriptions
- Billing Portal Integration
- Rechnungsübersicht
- Stripe Price IDs in DB eintragen (nach Stripe-Setup)
7. API-Keys Verwaltung
Beschreibung: Für Entwickler/Power-User API-Zugang ermöglichen
Features:
- API-Key generieren
- Key-Liste mit Berechtigungen
- Key widerrufen
- Usage-Statistiken pro Key
Aufgaben:
- API-Keys Seite erstellen
- Backend: Key-Generation
- Scopes/Berechtigungen definieren
- Rate-Limiting pro Key
Geschätzter Aufwand: 2-3 Tage
8. Onboarding-Flow
Beschreibung: Welcome-Wizard für neue Benutzer
Schritte:
- Willkommen & Kurze Einführung
- Profil vervollständigen (Name, Avatar)
- Bevorzugte Apps auswählen
- Dashboard personalisieren
- Credits-System erklären
- Tour durch wichtigste Features
Aufgaben:
- Onboarding-Wizard Komponente
- Progress-Tracking (User hat Onboarding abgeschlossen)
- Skip-Option
- Feature-Tour (Tooltip-basiert)
Geschätzter Aufwand: 2-3 Tage
Niedrige Priorität (Nice-to-have)
9. Mobile App aktivieren
Beschreibung: Die Mobile App (apps/mobile) existiert, aber scheint nicht aktiv genutzt
Status: Expo-Projekt vorhanden, aber möglicherweise veraltet
Aufgaben:
- Dependencies aktualisieren
- Funktionalität mit Web-App abgleichen
- Auth-Flow testen
- App Store Submission vorbereiten
10. DSGVO-konformer Daten-Export
Beschreibung: Benutzer können alle ihre Daten exportieren
Features:
- "Meine Daten exportieren" Button
- ZIP mit allen Daten (JSON/CSV)
- Inkl. aller App-Daten
- Account-Migration zu anderer Instanz
Aufgaben:
- Export-Job Backend
- Download-Link per E-Mail
- Fortschrittsanzeige
11. Aktivitäts-Feed
Beschreibung: Übergreifende Timeline aller Aktivitäten
Features:
- "Was habe ich heute gemacht?"
- Filter nach App
- Zeitraum-Auswahl
- Export als Report
12. Keyboard Shortcuts
Beschreibung: Power-User Shortcuts
Shortcuts:
Cmd/Ctrl + K- Quick Search/Command PaletteCmd/Ctrl + 1-9- Schnellzugriff auf AppsCmd/Ctrl + N- Neue Aktion (kontextabhängig)
Empfohlene Reihenfolge
| # | Task | Aufwand | Impact | Abhängigkeiten |
|---|---|---|---|---|
| 1 | App-Config aktualisieren | 2-4h | Hoch | Keine |
| 2 | Stripe-Integration | 2-3 Tage | Kritisch | mana-core-auth |
| 3 | Dashboard-Widgets erweitern | 1-2 Tage | Hoch | App-Config |
| 4 | Profil-Features | 1-2 Tage | Mittel | Keine |
| 5 | Notifications | 3-5 Tage | Hoch | Backend-Arbeit |
| 6 | Onboarding | 2-3 Tage | Mittel | Keine |
| 7 | Subscription-Management | 2-3 Tage | Mittel | Stripe |
| 8 | API-Keys | 2-3 Tage | Niedrig | Keine |
Quick Wins (< 1 Stunde)
Diese Tasks können schnell erledigt werden:
- Archivierte Apps aus
apps.tsentfernen - Deutsche Übersetzungen vervollständigen
- "Coming Soon" Badges für fehlende Features
- Loading-States verbessern
- Error-Handling mit Toast-Notifications
Technische Schulden
| Issue | Priorität | Beschreibung |
|---|---|---|
| Supabase → mana-core-auth | Hoch | Auth-Migration abschließen |
| Tests fehlen | Mittel | Unit/E2E Tests hinzufügen |
| TypeScript strict mode | Niedrig | Strikte Typisierung aktivieren |
| Bundle-Size | Niedrig | Tree-shaking optimieren |
Zuletzt aktualisiert: 2026-02-13 (Profile + Subscription + Credits Frontend)