Changelog

What's new in Commonplace.

Newest first. Entries collect related commits into a single line so the timeline reads like a product log instead of a Git history. The commit log on GitHub is the full source of truth.

  • May 2026 site

    Marketing site: quickstart, technical, changelog, about

    Expanded the marketing site beyond the landing page. Added dedicated pages for a quickstart guide, a technical overview, this running changelog, and an about / philosophy page. Footer now carries a wider map of relevant project links.

  • May 2026 design

    Marketing site shares the app's design tokens

    Rewrote web/styles.css against the app's color, radius, shadow, and typography tokens so the landing page and the in-app workspace read as one product. Light-first to match the app default; favicon and theme-color meta updated to the new palette.

  • May 2026 semantic

    Local embedding scaffold + runtime evaluation

    Introduced a local-transformers provider behind the existing EmbeddingProvider interface, with an explicit embeddingModelPath setting (no automatic downloads), rebuildNeeded detection, and a Settings → Advanced UI. Wrote a runtime evaluation comparing Ollama, local-command, Transformers.js, and onnxruntime-node.

    • 7494df9 docs: evaluate local embedding runtime options
    • 850bde4 feat: expose local embedding settings
    • d691574 feat: add local embedding provider scaffold
    • 7f8ff79 docs: define local intelligence architecture
  • Apr 2026 E5b

    Semantic polish & Related Notes UX hardening

    Added a semanticIndexingEnabled setting and a Clear command, extended stats (indexed-notes count, last-indexed and last-rebuild timestamps, durations, enabled flag), introduced stale-request protection via AbortSignal + a STALE_RELATED_REQUEST sentinel, and added a ~200 ms debounce on related-notes refresh. Failure isolation keeps an embedding crash from breaking the metadata index. Panel now has explicit unavailable / disabled / loading / error / empty / results states.

  • Apr 2026 E5

    Semantic memory foundation

    Markdown chunker, EmbeddingProvider interface, deterministic placeholder provider, semantic_chunks + semantic_embeddings tables, IPC channels, a SemanticProvider abstraction in the renderer, and a Related Notes tab in the right rail.

  • Apr 2026 E4b

    SQLite backlinks & graph

    Added getBacklinksForNote, getLinksForNote, and getGraphData against the existing files/links tables, new IPC channels, and a BacklinksGraphProvider in the renderer so desktop backlinks/graph come from SQLite while browser mode keeps the in-memory path.

  • Mar 2026 E4

    SQLite FTS5 search

    FTS5 virtual table over path, title, body, headings, and frontmatter text. Main-process searchNotes with a punctuation-safe tokenizer and plain-text snippets. Renderer abstracts over browserMiniSearchProvider and desktopSqliteSearchProvider.

  • Mar 2026 E3

    SQLite metadata index

    better-sqlite3 index at .commonplace/index.sqlite, schema with files, frontmatter, links, note_headings, and schema_meta. Full rebuild + incremental updates driven by watcher events. Narrow window.commonplace.index IPC API.

  • Mar 2026 E2

    File watching & external-edit safety

    chokidar watcher in main with debounced batched events. Stale-note banner in the editor when the active file changes externally. Optimistic-concurrency guard on writes via expectedMtimeMsWriteConflictError.

  • Feb 2026 E1

    Desktop vault adapter

    IPC bridge between main-process fs and renderer VaultAdapter. Path-safety guard, desktopVaultService, typed preload API, and createDesktopVaultAdapter with runtime-aware adapter selection. Browser adapters unchanged; Markdown remains the source of truth.

  • Feb 2026 shell

    Persistent tabs, sidebar tree, hotkeys

    Multi-tab workspace with per-tab back/forward history, pinned tabs, overflow dropdown, right-click context menu (Close / Close others / Close to right / Close all / Pin/Unpin). Tabs persist across launches via .commonplace/workspace.json (Electron) or localStorage (browser). Real nested folder tree in the sidebar with per-file-type icons. Settings → Hotkeys lets you rebind keys.

  • Jan 2026 electron

    Electron desktop shell

    Electron main process, contextBridge preload, runtime detection helper, esbuild compile pipeline, electron:dev / electron:build scripts. Browser build unchanged.

  • Jan 2026 ui

    Obsidian-style shell + redesign sweep

    Left ribbon, tab bar, bottom status bar, command palette (Ctrl/+K) with MRU ranking, frameless titlebar with overlay window controls, global accent focus ring, lucide-react icons across the shell, responsive icon sizing via clamp() design tokens, redesigned landing / empty-vault hero, and a `BrandMark` component shared across the app and the marketing site.

  • Earlier Foundations

    Vault, sync guide, attachments, graph, search

    Foundational work prior to the Electron pivot: local-folder vault persistence, recent-vault UX, safe Markdown preview with wiki links and backlinks, vault import / export, real note management dialogs, settings + theme system with folder defaults, backlink quality work, MiniSearch upgrade, attachments with duplicate-filename handling, sync-guide UX, and the clickable graph view with focus mode + filtering.

Full Git history

Every commit on main is documented in the commit log and grouped per pull request in docs/PR_HISTORY.md.