Feat v0.4.0 notes surface #22

Merged
xcaliber merged 3 commits from feat/v0.4.0-notes-surface into main 2026-03-29 11:16:38 +00:00
2 changed files with 38 additions and 1 deletions
Showing only changes of commit 9bcd23c942 - Show all commits

View File

@@ -2,6 +2,43 @@
All notable changes to Switchboard Core are documented here.
## v0.4.0 — Notes Surface
### Added
- **Notes surface package** (`packages/notes/`): Obsidian-style markdown notes
rebuilt as a standard installable `.pkg` archive. Type `full`, tier `starlark`.
Zero kernel changes — proves the extension stack end-to-end.
- **Starlark backend** (`script.star`): 7 API routes — CRUD, search, stats.
Note bodies stored in `ext_notes_notes` TEXT columns. List endpoint returns
lightweight projections (no body); full content fetched on select.
- **Markdown editor**: Preact+htm frontend with sidebar note list, monospace
textarea, and toggle-able live preview. Inline markdown renderer (~100 lines)
covers headings, bold, italic, code blocks, links, lists, blockquotes, and HR.
- **Auto-save**: Debounced save (1s) with dirty/saved status indicator.
`Ctrl/Cmd+S` for force save. Tab key inserts two spaces.
- **Pin & archive**: Pin important notes to the top of the list. Archive
(soft-delete) via the delete button; hard delete with `?hard=1` query param.
- **Search**: Case-insensitive full-text search across title and body content.
Search bar in sidebar filters the note list in real-time.
- **Theme support**: All styles use CSS variables — light and dark themes work
out of the box. Responsive layout collapses to vertical on narrow viewports.
### Data model
| Table | Columns |
|-------|---------|
| `ext_notes_notes` | title, body, folder_id, creator_id, updated_at, pinned, archived |
Indexes on `folder_id`, `creator_id`, `pinned`, `updated_at`.
### Planned (v0.4.1v0.4.4)
- Folders + navigation tree
- Tags + enhanced search
- Backlinks + `[[wikilinks]]`
- Rich editor (CodeMirror 6) + markdown import/export
## v0.3.8 — Distribution
### Added

View File

@@ -1 +1 @@
0.3.8
0.4.0