182 lines
6.8 KiB
Markdown
182 lines
6.8 KiB
Markdown
# Requirements: Tessera
|
|
|
|
**Defined:** 2026-06-18
|
|
**Core Value:** Eine zentrale Plattform, in der beliebige Workflow-Tools als Module lizenziert, aktiviert und genutzt werden koennen — ohne zwischen verschiedenen Anwendungen wechseln zu muessen.
|
|
|
|
## v1 Requirements
|
|
|
|
Requirements for initial release. Each maps to roadmap phases.
|
|
|
|
### Authentication & User Management
|
|
|
|
- [ ] **AUTH-01**: Initialer Admin-Account wird beim Setup via Docker-ENV erstellt
|
|
- [x] **AUTH-02**: Admin kann Benutzer manuell anlegen, bearbeiten und loeschen
|
|
- [x] **AUTH-03**: Benutzer kann sich anmelden und abmelden
|
|
- [x] **AUTH-04**: Benutzer-Session bleibt ueber Browser-Refresh bestehen
|
|
- [ ] **AUTH-05**: Rollenbasierte Zugriffskontrolle (Admin, User)
|
|
- [ ] **AUTH-06**: Benutzer koennen per LDAP/AD importiert werden
|
|
|
|
### Multi-Tenancy
|
|
|
|
- [ ] **TNNT-01**: Daten sind per PostgreSQL Row-Level Security mandantengetrennt
|
|
- [x] **TNNT-02**: Admin kann Mandanten anlegen und verwalten
|
|
- [ ] **TNNT-03**: Jeder Request wird automatisch dem richtigen Mandanten zugeordnet
|
|
|
|
### Portal Shell
|
|
|
|
- [x] **PRTAL-01**: Schmale Kopfzeile mit Branding und Benutzer-Menu
|
|
- [ ] **PRTAL-02**: Linke Seitenleiste zeigt Kategorien und aktivierte Module
|
|
- [ ] **PRTAL-03**: Ausgewaehltes Modul oeffnet sich im Hauptbereich (Mitte)
|
|
- [x] **PRTAL-04**: Responsive Layout fuer verschiedene Bildschirmgroessen
|
|
- [ ] **PRTAL-05**: Module koennen in der Seitenleiste durchsucht und gefiltert werden
|
|
|
|
### Marketplace
|
|
|
|
- [ ] **MRKT-01**: Uebersicht aller verfuegbaren Module mit Beschreibung und Kategorie
|
|
- [ ] **MRKT-02**: Admin kann Module pro Mandant aktivieren und deaktivieren
|
|
- [ ] **MRKT-03**: Nur aktivierte Module erscheinen in der Seitenleiste des Mandanten
|
|
- [ ] **MRKT-04**: Module sind in Kategorien gruppiert
|
|
|
|
### Dashboard
|
|
|
|
- [x] **DASH-01**: Konfigurierbares Dashboard als Startseite mit Drag & Drop Grid
|
|
- [x] **DASH-02**: Widgets koennen frei positioniert und in der Groesse geaendert werden
|
|
- [x] **DASH-03**: Uhr-Widget (analog oder digital)
|
|
- [x] **DASH-04**: Suchleiste-Widget (oeffnet Google/Suchmaschine im Browser)
|
|
- [x] **DASH-05**: Kalender-Widget mit Terminvorschau
|
|
- [x] **DASH-06**: Notiz-Widget (Freitext-Kachel)
|
|
- [x] **DASH-07**: Dashboard-Layout wird pro Benutzer gespeichert
|
|
|
|
### Kalender-Integration
|
|
|
|
- [ ] **CAL-01**: In Einstellungen koennen mehrere Kalenderquellen eingebunden werden (WebDAV, Exchange, ICS-Link)
|
|
- [x] **CAL-02**: Benutzer kann waehlen welche Kalender im Widget angezeigt werden
|
|
- [x] **CAL-03**: Benutzer kann waehlen fuer welche Kalender Terminvorschauen angezeigt werden
|
|
|
|
### Module System
|
|
|
|
- [ ] **MOD-01**: Versioniertes Modul-SDK mit standardisiertem Interface (@tessera/sdk)
|
|
- [ ] **MOD-02**: Module werden per Datenbank-Registry verwaltet
|
|
- [ ] **MOD-03**: Module koennen ohne Neustart aktiviert/deaktiviert werden
|
|
- [ ] **MOD-04**: Modul-UIs werden per Lazy Loading geladen (kein Bundle-Bloat)
|
|
|
|
### Domaincheck (Erstes Modul)
|
|
|
|
- [ ] **DCHK-01**: Benutzer kann eine Domain in ein Eingabefeld eingeben
|
|
- [ ] **DCHK-02**: System prueft ob die Domain registriert oder frei ist
|
|
- [ ] **DCHK-03**: Ergebnis wird klar angezeigt (frei/registriert)
|
|
|
|
### UI & Internationalisierung
|
|
|
|
- [x] **UI-01**: Light/Dark Theme umschaltbar pro Benutzer
|
|
- [x] **UI-02**: Zweisprachig: Deutsch und Englisch mit Sprachwahl
|
|
- [x] **UI-03**: i18n-Framework von Anfang an integriert (alle Strings ueber t('key'))
|
|
|
|
### Infrastruktur
|
|
|
|
- [x] **INFRA-01**: Komplette Anwendung laeuft als Docker-Compose-Stack
|
|
- [x] **INFRA-02**: PostgreSQL-Datenbank im Container
|
|
- [x] **INFRA-03**: Docker-Netzwerksegmentierung (Frontend/Backend/Data)
|
|
- [x] **INFRA-04**: Automatisierte Gitea-Integration (Commits, Pushes, Merges)
|
|
|
|
### Desktop-Client
|
|
|
|
- [x] **DESK-01**: Tauri-basierter Desktop-Wrapper fuer Windows und Linux
|
|
- [x] **DESK-02**: Desktop-App verbindet sich mit dem Web-Backend (kein eigenstaendiger Server)
|
|
|
|
## v2 Requirements
|
|
|
|
Deferred to future release. Tracked but not in current roadmap.
|
|
|
|
### Authentication Erweiterungen
|
|
|
|
- **AUTH-V2-01**: SSO/OIDC-Anbindung
|
|
- **AUTH-V2-02**: Zwei-Faktor-Authentifizierung (2FA)
|
|
- **AUTH-V2-03**: Magic-Link Login
|
|
|
|
### Marketplace Erweiterungen
|
|
|
|
- **MRKT-V2-01**: Bezahlsystem fuer Module (Lizenzschluessel oder Abo)
|
|
- **MRKT-V2-02**: Drittanbieter koennen Module einreichen
|
|
- **MRKT-V2-03**: Bewertungen und Reviews fuer Module
|
|
|
|
### Erweiterte Features
|
|
|
|
- **FEAT-V2-01**: Notification Center (In-App-Benachrichtigungen)
|
|
- **FEAT-V2-02**: Per-Tenant Branding (Logo + Akzentfarbe)
|
|
- **FEAT-V2-03**: Keyboard Shortcuts und Command Palette
|
|
- **FEAT-V2-04**: Admin-Impersonation (als anderer Benutzer agieren)
|
|
- **FEAT-V2-05**: Onboarding-Wizard fuer neue Mandanten
|
|
|
|
## Out of Scope
|
|
|
|
| Feature | Reason |
|
|
|---------|--------|
|
|
| Mobile App | Web-first, Desktop-Wrapper reicht fuer v1 |
|
|
| Real-time Chat | Hohe Komplexitaet, nicht Kern der Plattform |
|
|
| Video/Streaming | Storage/Bandwidth, nicht relevant fuer Workflow-Tools |
|
|
| Payment/Billing | Lizenzierung erstmal per Admin-Freischaltung |
|
|
| Third-Party Module SDK | Erst eigene Module, oeffnung spaeter |
|
|
| Microservice-Architektur | Modular Monolith reicht, Extraction spaeter moeglich |
|
|
|
|
## Traceability
|
|
|
|
Which phases cover which requirements. Updated during roadmap creation.
|
|
|
|
| Requirement | Phase | Status |
|
|
|-------------|-------|--------|
|
|
| AUTH-01 | Phase 2 | Pending |
|
|
| AUTH-02 | Phase 2 | Complete |
|
|
| AUTH-03 | Phase 2 | Complete |
|
|
| AUTH-04 | Phase 2 | Complete |
|
|
| AUTH-05 | Phase 2 | Pending |
|
|
| AUTH-06 | Phase 2 | Pending |
|
|
| TNNT-01 | Phase 2 | Pending |
|
|
| TNNT-02 | Phase 2 | Complete |
|
|
| TNNT-03 | Phase 2 | Pending |
|
|
| PRTAL-01 | Phase 1 | Complete |
|
|
| PRTAL-02 | Phase 4 | Pending |
|
|
| PRTAL-03 | Phase 4 | Pending |
|
|
| PRTAL-04 | Phase 1 | Complete |
|
|
| PRTAL-05 | Phase 4 | Pending |
|
|
| MRKT-01 | Phase 4 | Pending |
|
|
| MRKT-02 | Phase 4 | Pending |
|
|
| MRKT-03 | Phase 4 | Pending |
|
|
| MRKT-04 | Phase 4 | Pending |
|
|
| DASH-01 | Phase 5 | Complete |
|
|
| DASH-02 | Phase 5 | Complete |
|
|
| DASH-03 | Phase 5 | Complete |
|
|
| DASH-04 | Phase 5 | Complete |
|
|
| DASH-05 | Phase 5 | Backend Complete (05-03) |
|
|
| DASH-06 | Phase 5 | Complete |
|
|
| DASH-07 | Phase 5 | Complete |
|
|
| CAL-01 | Phase 5 | Backend Complete (05-03) |
|
|
| CAL-02 | Phase 5 | Backend Complete (05-03) |
|
|
| CAL-03 | Phase 5 | Backend Complete (05-03) |
|
|
| MOD-01 | Phase 3 | Pending |
|
|
| MOD-02 | Phase 3 | Pending |
|
|
| MOD-03 | Phase 3 | Pending |
|
|
| MOD-04 | Phase 3 | Pending |
|
|
| DCHK-01 | Phase 3 | Pending |
|
|
| DCHK-02 | Phase 3 | Pending |
|
|
| DCHK-03 | Phase 3 | Pending |
|
|
| UI-01 | Phase 1 | Complete |
|
|
| UI-02 | Phase 1 | Complete |
|
|
| UI-03 | Phase 1 | Complete |
|
|
| INFRA-01 | Phase 1 | Complete |
|
|
| INFRA-02 | Phase 1 | Complete |
|
|
| INFRA-03 | Phase 1 | Complete |
|
|
| INFRA-04 | Phase 6 | Complete |
|
|
| DESK-01 | Phase 6 | Complete |
|
|
| DESK-02 | Phase 6 | Complete |
|
|
|
|
**Coverage:**
|
|
|
|
- v1 requirements: 44 total
|
|
- Mapped to phases: 44
|
|
- Unmapped: 0
|
|
|
|
---
|
|
*Requirements defined: 2026-06-18*
|
|
*Last updated: 2026-06-18 after roadmap creation*
|