Tracker Widget is a local-first desktop productivity app built with Tauri v2, SvelteKit, and Rust. It uses plain Markdown files for todos, weekly planning, daily logs, and notes.
Current version: 1.1.0
- Single workspace folder setup.
todo.mdchecklist at the workspace root.- Weekly folders named like
2026w27. - Daily logs and weekly index files generated from templates.
- Todo folding, row numbers, keyboard reorder, multiselect, and context-menu actions.
- Send selected todos to today's activity, weekly objectives, or weekly planned activities.
- Daily sessions with activity tracking, subject pills, time pills, notes, and session suggestions.
- Weekly planning with editable planned activity details.
- Weekly actuals derived from daily logs, with read-only activity details.
- App-local subject and session history suggestions.
- Optional personal YAML frontmatter mode for newly created files.
- Portable zip release support.
Normal use expects one workspace folder:
workspace/
todo.md
2026w27/
2026w27_index.md
20260701_log.md
20260702_log.md
Unknown files are ignored. Missing week files can be created from the sidebar. Missing todo.md can be created or imported from the Todo view.
- Open the app.
- Select a workspace folder.
- Create or import
todo.mdif needed. - Use Create week files from the sidebar to initialize the current week.
Workspace location is managed from Settings. The Todo path is derived as <workspace>/todo.md.
Enter: add a todo.Tab/Shift + Tab: indent or outdent.Alt + ArrowUp/Alt + ArrowDown: reorder the focused visible todo.- Use the toolbar to show row numbers, fold/unfold, undo/redo, reload, and add todos.
Ctrl + click: select multiple todos.Shift + click: select a visible range.- Right-click selected todos for bulk actions and send-to actions.
Daily logs contain sessions, activities, subjects, time, and notes.
Activity Markdown format:
- {subjects: (rust, ui), time: 120m} Refactored the settings panel layout.Session suggestions come from the current weekly plan first, then app-local session history.
Weekly plan rows have stable IDs and editable activity details:
| ID | Day | Session | Subjects | Target Minutes |
| --- | --- | --- | --- | ---: |
| p1 | Fri | Calc1 study | math, geometry | 180 |
## Weekly Plan Details
<!-- tracker:plan-details:start -->
### p1
- {subjects: (math), time: 30m} Solve examples
<!-- tracker:plan-details:end -->Plan card subject and time summaries are derived from planned activities. Weekly actuals are derived from daily logs and remain read-only.
- Workspace folder.
- Frontmatter mode:
OfforPersonal. - Rebuild subject history.
- Rebuild session history.
History files are app-local and ignored by git:
subject-history.jsonsession-history.json
Install Node.js and Rust, then:
npm install
npm run tauri devRun checks:
npm run test
npm run check
cargo test --manifest-path src-tauri/Cargo.toml
cargo check --manifest-path src-tauri/Cargo.tomlBuild the frontend only:
npm run buildBuild the Tauri release:
npm run tauri buildBuild the portable zip:
npm run package:portableThe portable zip is written to build-artifacts/tracker-widget-portable-v1.1.0.zip.