An open-source engineering notebook for documenting your daily work.
Built with React, BlockNote, and Excalidraw.
- 5 theme presets -- Light, Dark, Dracula, Catppuccin Mocha, and Solarized Light — each adapts the entire UI including syntax highlighting
- 7 font families -- Figtree, Plus Jakarta Sans, DM Sans, Urbanist, Inter, JetBrains Mono, or Source Serif
- Focus mode -- Full-screen, distraction-free writing on a single entry
- Progressive Web App -- Install as a standalone app on any device, works offline
- Daily entries -- Organized by day with timestamps, create entries with
Cmd+J - Rich text editing -- Powered by BlockNote with slash commands for headings, lists, code blocks, and more
- Inline drawings -- Embed Excalidraw diagrams directly in your notes via
/drawing - Syntax highlighting -- 24 languages with Shiki, theme-aware code blocks
- Wiki-style linking -- Type
[[to link between entries and build a knowledge graph - Backlinks -- "Referenced by" panel below each entry shows all entries that link to it, auto-maintained on save
- Entry templates -- Start entries with structured sections: Decision Log, Debugging Session, Meeting Notes, Learning Log, and End of Day — each with pre-filled headings and auto-tags
- Entry signifiers -- Label entries as Decision, Question, Idea, or Milestone with color-coded indicators; filterable in the sidebar. Most entries need no signifier — use them to highlight what matters
- Pin entries -- Pin important entries to the top of your stream
- Tagging -- Color-coded tags for categorization and filtering
- Saved filters -- Save tag + text filter combinations as named presets for one-click access
- Search -- Full-text search across all entries and tags (
Cmd+K)
- Weekly review -- Toggle a weekly view that groups entries by ISO week with signifier breakdowns, top tags, and entry previews
- Collapsible week cards -- Most recent week auto-expanded, older weeks collapsed
- Filtering in review mode -- Text, tag, signifier, and saved filter all work in the weekly view
- Local-first -- All data stored in IndexedDB, no server required
- Optional server sync -- End-to-end encrypted sync across devices. Use the default server or self-host your own — generate a sync ID, and your entries are encrypted before leaving the browser
- Import & export -- Export all entries as JSON for backup, import them back anytime
- Archive & restore -- Archive old entries to keep your workspace clean, browse and restore them anytime
- Mobile-friendly -- Responsive layout with touch-friendly controls
- Keyboard-driven --
Cmd+Jnew entry,Cmd+Ksearch,Cmd+\toggle sidebar,Escapeclear filter
An optional AI sidebar with 12 concrete engineer actions. Off by default, zero impact on the core app when disabled. Easy to remove if unwanted — fork and delete src/features/ai/ without affecting anything else.
Quick start:
- Click the gear icon in the left sidebar and select Enable AI
- Configure a provider — choose one:
- Hover over a note and click the lightbulb icon
- Pick an action from 4 categories:
| Category | Actions |
|---|---|
| Summarize | My Day, My Week, A Topic |
| Generate | Standup Update, PR Description, ADR from Notes, Draft Message |
| Think | Rubber Duck, Challenge My Thinking, Explore Tradeoffs |
| Remember | What Did I Decide About...?, When Did I Last Work On...? |
Actions support multi-entry context (day, week, or topic scope) and topic search.
git clone https://github.com/gruberb/workledger.git
cd workledger
npm install
npm run devOpen http://localhost:5173 in your browser.
MIT

