LaunchPad

Ein moderner, minimalistischer Homelab-Launcher inspiriert von Raycast, Spotlight, Arc und Linear. Tippe wenige Buchstaben, finde sofort den gewünschten Dienst, drücke Enter.

Kein überladenes Dashboard. Keine Kacheln. Im Mittelpunkt steht eine extrem schnelle Suche.

Quickstart (Docker)

git clone <repo-url> LaunchPad
cd LaunchPad
docker compose up -d --build

Quickstart (lokale Entwicklung)

Voraussetzungen: Node.js ≥ 20, pnpm ≥ 9.

pnpm install
pnpm dev:backend   # startet Fastify auf :3001
pnpm dev:frontend  # startet Vite auf :5173 (proxyt /api zum Backend)

Projektstruktur

LaunchPad
│
├── apps
│   ├── frontend   React + Vite + TypeScript + TailwindCSS
│   └── backend    Fastify + TypeScript + Drizzle ORM + SQLite
│
├── packages
│   ├── shared     gemeinsame Typen (Device, Service) + Such-Ranking-Logik
│   └── ui         gemeinsame UI-Komponenten (SearchInput, StatusBadge)
│
├── docker         zusätzliche Docker-Hilfsdateien
├── docs           Projektdokumentation
├── pnpm-workspace.yaml
├── docker-compose.yml
└── tsconfig.base.json

Stand dieses Commits

Dieser erste Commit liefert ein lauffähiges Grundgerüst:

  • pnpm-Monorepo mit apps/* und packages/*
  • Fastify-Backend mit /api/health-Endpunkt
  • SQLite-Datenbank (better-sqlite3) inkl. Schema für devices, services, categories (Drizzle ORM), automatisch angelegt beim Start
  • React-Startseite mit Suchfeld, Dark-/Light-Mode und Live-Statusanzeige des Backends
  • Tastaturkürzel / und Strg+K zum Fokussieren der Suche
  • Docker-Compose-Setup: docker compose up -d --build startet Frontend + Backend
  • Persistentes Docker-Volume für die SQLite-Datenbank

Noch nicht enthalten (folgt in den nächsten Commits):

  • Scanner (FritzBox, DNS, HTTP/HTTPS, Portscan, Softwareerkennung)
  • CRUD-API für Geräte/Dienste/Kategorien
  • Fuzzy-Suche im Frontend gegen echte Daten (Ranking-Logik existiert bereits in packages/shared, ist aber noch nicht ans UI angebunden)
  • Adminbereich, Plugin-System, PWA-Manifest, TanStack Router/Query, shadcn/ui, Zod, RHF

Siehe docs/ROADMAP.md für die geplante Reihenfolge.

Deployment auf dem Server (xlc-launchpad)

cd /opt/LaunchPad
git pull
docker compose up -d --build

Branching

Entwicklung erfolgt ausschließlich auf dev. main bleibt der stabile Branch.

Description
No description provided
Readme 3.7 MiB