Files
web-app-launcher/plans/mvp-web-app-launcher/PLAN.md
T
alexei.dolgolyov 1c0a7cb850 feat: Phases 4-7 — Full Feature Expansion (26 features)
Phase 4 — New Widget Types:
- Clock/Weather, System Stats, RSS/Feed, Calendar, Markdown,
  Metric/Counter, Link Group, Camera/Stream widgets
- Backend services with caching for each data source
- Full creation form with dynamic config fields per type

Phase 5 — Visual & Styling Enhancements:
- Glassmorphism card style (solid/glass/outline)
- Board-level themes with per-board hue/saturation
- Animated SVG status rings replacing static dots
- Card size options (compact/medium/large)
- Custom CSS injection (admin + per-board, sanitized)
- Wallpaper backgrounds with blur/overlay/parallax

Phase 6 — Functional Features:
- Favorites bar with drag-and-drop reordering
- Recent apps tracking with privacy toggle
- Uptime dashboard page (/status, guest-accessible)
- Notifications system (Discord/Slack/Telegram/HTTP webhooks)
- App tags with filtering in board view
- Multi-URL app cards with expandable sub-links
- Personal API tokens with scoped permissions
- Audit log with retention and admin viewer

Phase 7 — Quality of Life:
- Onboarding wizard (5-step first-launch setup)
- App URL health preview with favicon/title detection
- Board templates (4 built-in + custom import/export)
- Keyboard shortcut overlay (j/k nav, 1-9 boards, ? help)

212 files changed, 15641 insertions, 980 deletions.
Build, lint, type check, and 222 tests all pass.
2026-03-25 14:18:10 +03:00

2.9 KiB

Feature: Web App Launcher — MVP

Branch: feature/mvp-web-app-launcher Base branch: master Created: 2026-03-24 Status: 🟡 In Progress Strategy: Big Bang Mode: Automated Execution: Orchestrator

Summary

Build a self-hosted web application launcher/dashboard for a TrueNAS server environment. The MVP includes local auth + guest mode, app CRUD with healthchecks, a single default board with sections and app widgets, an admin panel, dark theme with ambient backgrounds, and Docker deployment with Gitea CI.

Build & Test Commands

  • Build: npm run build
  • Test: npm test
  • Lint: npm run lint
  • Type Check: npm run check

Tech Stack

  • Framework: SvelteKit (Svelte 5 runes mode) + TypeScript strict
  • UI: Tailwind CSS v4 + shadcn-svelte (Bits UI) + Lucide Svelte + Simple Icons
  • Data: Prisma ORM + SQLite + Superforms + Zod
  • Auth: bcrypt + JWT (HTTP-only cookies) + refresh token rotation
  • Background Jobs: node-cron
  • DevOps: Docker (multi-stage) + docker-compose + Gitea Actions

Phases

  • Phase 1: Project Scaffolding & Tooling [backend] → subplan
  • Phase 2: Database Schema & Services Layer [backend] → subplan
  • Phase 3: Authentication System [fullstack] → subplan
  • Phase 4: App Registry & Healthcheck [fullstack] → subplan
  • Phase 5: Board, Section & Widget System [fullstack] → subplan
  • Phase 6: Admin Panel [fullstack] → subplan
  • Phase 7: UI Polish & Ambient Backgrounds [frontend] → subplan
  • Phase 8: Integration, Testing & Deployment [fullstack] → subplan

Phase Progress Log

Phase Domain Status Review Build Committed
Phase 1: Scaffolding backend Complete
Phase 2: Database & Services backend Complete
Phase 3: Authentication fullstack Complete
Phase 4: App & Healthcheck fullstack Complete
Phase 5: Board & Widgets fullstack Complete
Phase 6: Admin Panel fullstack Complete
Phase 7: UI Polish frontend Complete
Phase 8: Integration & Deploy fullstack Complete

Final Review

  • Comprehensive code review
  • Full build passes
  • Full test suite passes
  • Merged to master