• v0.0.1 2c9c36605d

    0.0.1
    Release / docker (push) Successful in 1m2s
    Release / release (push) Successful in 4s
    Lint & Test / lint-and-check (push) Failing after 5m11s
    Lint & Test / test (push) Has been skipped
    Stable

    alexei.dolgolyov released this 2026-04-10 21:23:00 +03:00 | 7 commits to master since this release

    v0.0.1 (2026-04-10)

    Initial release of Web App Launcher — a self-hosted dashboard for organizing, monitoring, and launching web applications.

    Features

    • Dashboard system — boards, sections, and widgets with drag-and-drop reordering (b0d77d3, a6b09aa)
    • App registry & healthcheck — register apps with icons, tags, categories; automatic status monitoring with sparkline history (4d941f5, c5f5f84)
    • Authentication — local auth + OAuth/Authentik integration (2c001df, bf4e508)
    • Per-board access control — role-based board visibility (5bb4fbc)
    • Service integrations — media services, Planka, and six additional integration types (114dee5, d73fb9c, 55e220b)
    • Widget system — multi-entity picker, column span resizing, visual app selector grid (5af670f, f559c93, 17c8407)
    • WYSIWYG inline editing — edit dashboards in-place (a6b09aa)
    • SQLite database backup — replace JSON import/export with full DB backup (b0439e3)
    • Admin panel — user management with deletion confirmation (c5166ba, 65783e3)
    • Localization — English and Russian (477c0e4)
    • PWA support — installable app with auto-discovery and multi-tab sync (dd6958b)
    • UI polish — ambient backgrounds, user theme overrides, bits-ui dropdown, collapsible sidebar (0bd30c5, c6a7de8, b5166d9)

    Bug Fixes

    • SSRF protection on URL preview endpoint (d90507a)
    • Enforce API token scope on requests (215c8fd)
    • HLS.js for fullscreen camera stream (819283f)
    • Search dialog and store fixes (c62ca79, bcde710)
    • SVG favicon and PWA manifest (4326d95)
    • Polish empty states and status page layout (76ce85c)

    Performance

    • Batch-load app status history to eliminate N+1 requests (aedc91e, 92eeead)
    • Optimize cold start with lazy-loading icons and parallel DB queries (1e3a04f)

    Development / Internal

    • CI/CD pipeline: lint & test workflow, release workflow with Docker push and Gitea releases
    • Prisma schema and migrations for all entities
    • Linter and a11y warning cleanup (44e1849)
    • Security review fixes (5a6002b)

    All Commits
    Hash Message Author
    76ce85c fix: polish empty states and status page layout alexei.dolgolyov
    aedc91e perf: batch-load app status history server-side to eliminate N+1 requests alexei.dolgolyov
    b5166d9 refactor: header user menu with bits-ui dropdown, collapsible sidebar boards alexei.dolgolyov
    44e1849 fix: resolve all linter errors and a11y warnings alexei.dolgolyov
    f96cbbc chore(i18n): add locale keys for widget resize, delete user, multi-picker alexei.dolgolyov
    5af670f feat: multi-entity picker for status widget app selection alexei.dolgolyov
    f559c93 feat: widget column span resizing with visual size picker alexei.dolgolyov
    65783e3 feat: user deletion confirmation modal alexei.dolgolyov
    1e3a04f perf: optimize cold start by lazy-loading icons and parallelizing DB queries alexei.dolgolyov
    17c8407 feat(widget-config): visual app selector grid with search and icons alexei.dolgolyov
    c5f5f84 feat(app-form): icon picker, tag/category autocomplete, typography alexei.dolgolyov
    a6b09aa feat(inline-edit): add WYSIWYG inline dashboard editing mode alexei.dolgolyov
    b0439e3 feat(backup): replace JSON import/export with SQLite database backup system alexei.dolgolyov
    d479726 feat: add app edit page with pre-populated form alexei.dolgolyov
    44bbf7b fix(service-integrations): resolve type errors and test failures alexei.dolgolyov
    55e220b feat(service-integrations): phases 9-10 — media integrations + Planka alexei.dolgolyov
    d73fb9c feat(service-integrations): phases 3-8 — six service integrations alexei.dolgolyov
    50e8519 feat(service-integrations): phase 2 — integration widget & app form UI alexei.dolgolyov
    114dee5 feat(service-integrations): phase 1 — integration architecture foundation alexei.dolgolyov
    c62ca79 fix: delay search dialog close so link navigation fires first alexei.dolgolyov
    bcde710 fix: search store now parses API envelope response correctly alexei.dolgolyov
    92eeead perf: batch-load app history to eliminate N+1 fetches on board load alexei.dolgolyov
    4326d95 fix: use SVG icon for favicon and PWA manifest alexei.dolgolyov
    d90507a fix: add SSRF protection to URL preview endpoint alexei.dolgolyov
    819283f fix: use HLS.js for fullscreen camera stream alexei.dolgolyov
    215c8fd fix: enforce API token scope on requests alexei.dolgolyov
    014de02 fix: address final review blockers alexei.dolgolyov
    1c0a7cb feat: Phases 4-7 — Full Feature Expansion (26 features) alexei.dolgolyov
    8d78478 feat: add IconGrid, EntityPicker controls and enhance search panel alexei.dolgolyov
    395ed82 fix: address all final review findings for Phase 3 alexei.dolgolyov
    7d8a8fb feat(phase3): phase 7 - integration & polish alexei.dolgolyov
    dd6958b feat(phase3): PWA, auto-discovery, bookmarklet, multi-tab sync alexei.dolgolyov
    c6a7de8 feat(phase3): import/export, sparklines, user theme overrides alexei.dolgolyov
    cba160e fix: address all code review findings alexei.dolgolyov
    5a6002b fix: address security findings from final review alexei.dolgolyov
    87ed928 feat(phase2): phase 6 - integration & polish alexei.dolgolyov
    5bb4fbc feat(phase2): per-board access control UI alexei.dolgolyov
    477c0e4 feat(phase2): localization EN/RU + additional widget types alexei.dolgolyov
    bf4e508 feat(phase2): OAuth/Authentik integration + drag-and-drop reordering alexei.dolgolyov
    bb3b1a5 fix: resolve runtime errors and missing routes alexei.dolgolyov
    e6b50fb feat(mvp): phase 8 - integration, testing & deployment alexei.dolgolyov
    0bd30c5 feat(mvp): phase 7 - UI polish & ambient backgrounds alexei.dolgolyov
    c5166ba feat(mvp): phase 6 - admin panel alexei.dolgolyov
    b0d77d3 feat(mvp): phase 5 - board, section & widget system alexei.dolgolyov
    4d941f5 feat(mvp): phase 4 - app registry & healthcheck alexei.dolgolyov
    2c001df feat(mvp): phase 3 - authentication system alexei.dolgolyov
    f1b1aa5 feat(mvp): phase 2 - database schema & services layer alexei.dolgolyov
    cf6bde2 feat(mvp): phase 1 - project scaffolding & tooling alexei.dolgolyov
    Downloads