generated from Dicken/dickendock
59 lines
2.3 KiB
Markdown
59 lines
2.3 KiB
Markdown
# Roadmap
|
||
|
||
Geplante Reihenfolge der nächsten Commits, aufbauend auf dem lauffähigen
|
||
Grundgerüst aus Commit 1.
|
||
|
||
## ✅ Commit 2 — Geräte- & Dienste-API (erledigt)
|
||
|
||
- REST-Endpunkte (Fastify) für `GET/POST/PATCH/DELETE` auf `devices` und `services`
|
||
- Zod-Validierung der Request-Bodies (`packages/shared/src/schemas.ts`)
|
||
- Repository-Layer über Drizzle (`apps/backend/src/db/repositories`)
|
||
|
||
## ✅ Commit 3 — Suche im Frontend (erledigt)
|
||
|
||
- Anbindung von `rankServices` aus `packages/shared` an echte Backend-Daten
|
||
- TanStack Query für Datenhaltung (`apps/frontend/src/hooks/useServices.ts`)
|
||
- Tastatur-Navigation (Pfeiltasten wählen, Enter öffnet Dienst in neuem Tab, Escape leert Suche)
|
||
- Neue UI-Komponente `ResultsList` in `packages/ui`
|
||
|
||
> TanStack Router wird bewusst erst mit dem Adminbereich (Commit 6) eingeführt,
|
||
> da es vorher keine zweite Route gibt, die er sinnvoll verwalten könnte.
|
||
|
||
## ✅ Commit 4 — Kategorien & Favoriten (erledigt)
|
||
|
||
- Kategorien-API: Erstellen, Umbenennen, Löschen, Bulk-Reorder (`PATCH /api/categories/reorder`)
|
||
- Löschen einer Kategorie setzt `category` bei betroffenen Diensten auf `null`,
|
||
löscht die Dienste aber nicht
|
||
- Favoriten-Toggle direkt in der Trefferliste des Frontends (Stern anklicken,
|
||
per `useMutation` + Cache-Invalidierung)
|
||
|
||
> Die eigentliche Kategorien-*Verwaltungsoberfläche* (Erstellen/Umbenennen/
|
||
> Drag & Drop in der UI) wandert in Commit 6 (Adminbereich) – die Startseite
|
||
> bleibt bewusst die minimalistische Suche, kein Verwaltungs-UI dort.
|
||
|
||
## Commit 5 — Scanner
|
||
|
||
- FritzBox-Scanner (TR-064/UPnP)
|
||
- DNS-, HTTP-, HTTPS-Scanner
|
||
- Optionaler Portscanner mit definierter Portliste
|
||
- Titel- und Favicon-Auslesen
|
||
- Softwareerkennung (Home Assistant, Synology DSM, Frigate, Portainer, Grafana,
|
||
Proxmox, Immich, Paperless, Gitea, Vaultwarden, Jellyfin, Nextcloud, Pi-hole,
|
||
AdGuard, Unifi, …)
|
||
- "Jetzt scannen"-Button; niemals automatische Scans
|
||
- Scans überschreiben niemals Displayname, Kategorie, Favorit, Reihenfolge, Alias, Icon
|
||
|
||
## Commit 6 — Adminbereich
|
||
|
||
- Menüpunkte: Dashboard, Geräte, Dienste, Scanner, Kategorien, Plugins,
|
||
Einstellungen, Logs
|
||
|
||
## Commit 7 — PWA
|
||
|
||
- Manifest, Service Worker, Offline-Grundfunktion, Installierbarkeit
|
||
|
||
## Commit 8 — Plugin-System
|
||
|
||
- Plugin-Schnittstelle zum Registrieren von Scannern, Import von Geräten,
|
||
Erweitern von Menüs, Bereitstellen von Icons
|