Skip to content

Active development — do not use in production yet. Build-in-public project. First stable release: v1.0.0. Expect breaking changes, missing features and rough edges before then.

kandown
107 releases

Changelog

2026-07-28

v0.45.0· Theme Store

Added

  • Theme store. Ship the bundled gallery as a community-driven store that mirrors the extension system. Only kandown ships with the package; curated (claude, linear, notion) and community themes are hosted in registry/themes.json and installed as single JSON files under .kandown/themes/<id>.json. One-click install from the registry, paste-URL install, and a kandown theme list|install|publish|create CLI surface.

  • Floating theme editor. The editor is now a draggable, minimizable, compact panel (400x580, position persisted in localStorage) instead of the centered modal. Adds a Publish tab with author + GitHub username inputs, Download JSON, and Propose on GitHub (zero-backend submission via a prefilled github.com/.../new/main/registry/themes URL with the JSON base64-encoded as the value= query parameter). Adds an Advanced tab with glass intensity, border width, per-level shadow overrides, and display font override.

  • Curated themes with advanced options. claude, linear, and a fresh notion (replacing notion-dark) ship as curated starters in the registry, each with calibrated glassIntensity, shadowCard, shadowPopover, and shadowDrawer overrides on top of the standard appearance tokens.

  • In-app store. Settings → Themes (mirrors the Extensions panel) lists installed themes with one-click install / uninstall, a paste-URL field for arbitrary GitHub repos, and an Open editor shortcut. The skin picker also gets a Get more themes CTA that jumps straight to the store.

  • Community vitrine. kandown.dev/themes renders the registry as a searchable, sortable, tag-filtered gallery (TanStack Router, mirror of /extensions) with per-theme detail pages showing the raw JSON and the canonical install command.

  • Daemon API. /api/themes, /api/themes/install, /api/themes/<id> (DELETE), /api/themes/registry. Filesystem helpers serverListThemes, serverInstallTheme, serverUninstallTheme, serverFetchThemeRegistry.

Changed

  • THEME_PRESETS is no longer an inline array in src/lib/theme.ts; it re-exports from src/lib/themes/index.ts, which now ships only kandown. All other presets moved to registry/themes/.
  • Legacy skin id aliases (sage, cobalt, graphite, rose) no longer map to deleted themes; unknown ids fall back to kandown. Install from the registry to restore the old look.
  • applyProjectTheme honors glassIntensity and per-level shadowCard|Popover|Drawer overrides when present.