Mindwtr 0.5.4
Highlights
- Desktop performance overhaul: lazy-loaded heavy views/settings, list/review optimizations, virtualization improvements, and derived-state caching.
- Sync reliability + visibility: timestamp normalization, conflict status persistence, folder path support, and surfaced sync/save errors.
- UX upgrades: search term highlighting, settings URL validation, and refined view/layout structure across desktop screens.
- New performance monitoring + CI audit to prevent regressions.
Desktop
- Lazy-load heavy views and settings subpages, reduce view-switch overhead, and optimize list/review rendering.
- Add error boundaries across major views and surface update/sync/storage failures.
- Refactor large UI into smaller components (list header/bulk actions, review panels, project details, attachments modals).
- Add SQLite indexes and task ordering improvements for faster queries.
Mobile
- Debounced task title/description edits to reduce jank.
- Search debounce + loading state for better feedback.
- Persist sync status without error state regressions.
Core / Sync
- Normalize timestamps on load and during sync for consistency.
- Avoid deep cloning on save and per-project order scans to improve performance.
- Persist conflict status after sync and accept folder paths for mobile/web sync.
Docs / CI
- Wiki sync workflow improvements and Syncthing guidance updates.
- README and README_zh alignment plus Docker/Winget related docs updates.
- Performance audit script wired into CI.
Full Change List (since 0.5.3)
- fix(desktop): handle readonly preset arrays
- perf(desktop): reuse derived maps in list view
- perf: add performance monitoring and audit
- perf(desktop): speed up list and review mounts
- perf(desktop): reduce view switch and render overhead
- fix(desktop): handle tauri fs dir entries safely
- ci: drop wiki token fallback
- docs(wiki): add sync timing tip
- ci: grant wiki sync write permissions
- docs(wiki): clarify syncthing folder guidance
- ci: fix wiki sync repository setting
- docs: add wiki content and track wiki folder
- docs: align README_zh with README
- fix: address sync edge cases and list performance
- fix(desktop): quiet sync settings load errors
- refactor(desktop): extract list quick add
- refactor(desktop): extract task item edit state
- fix(core): normalize task timestamps on load
- perf(desktop): memoize sequential project ids
- fix(mobile): persist sync status without error state
- perf(mobile): debounce title edits in task editor
- fix(desktop): persist sync status without error state
- fix(sync): persist conflict status after sync
- fix(desktop): report bootstrap failures
- perf(desktop): lazy-load settings subpages
- ux(mobile): add search debounce and loading state
- perf(mobile): debounce task description edits
- fix(desktop): surface storage adapter errors
- fix(desktop): surface update check errors
- fix(desktop): surface calendar sync errors
- fix(desktop): surface sync config errors
- perf(desktop): lazy-load heavy views
- fix(core): normalize timestamps during sync
- refactor(desktop): extract list and task AI hooks
- refactor(desktop): extract task recurrence state
- refactor(desktop): extract task attachment logic
- fix(desktop): guard settings defaults
- chore(desktop): report errors and add docs
- perf(desktop): optimize review status counts
- fix(desktop): lazy-load settings page hooks
- perf(desktop): preload heavy views
- perf(desktop): add sqlite indexes for task queries
- refactor(desktop): extract project details fields
- refactor(desktop): extract task attachment helpers
- refactor(desktop): extract list virtualization hook
- refactor(desktop): extract task and project view helpers
- fix(desktop): stabilize settings labels and project grouping
- fix(desktop): surface sync errors in store
- fix(settings/projects): cleanup view layout
- refactor(list): extract empty state and fix view wrappers
- perf(settings): lazy-load AI settings
- perf(sqlite): add task indexes
- refactor(settings): extract labels module
- fix(settings): resolve t initialization order
- refactor(list): extract header and bulk actions
- fix(desktop): resolve settings/list build issues
- refactor(projects): extract project header
- refactor(review): extract filter and list sections
- fix(db): add updatedAt indexes
- fix(settings): avoid early label access
- fix(settings): simplify speech settings typing
- fix(projects): close error boundary wrapper
- fix(review): close error boundary wrapper
- refactor(list): extract virtual task row
- refactor(settings): extract update modal
- refactor(task): extract image and text attachment modals
- refactor(task): extract audio attachment modal
- refactor(projects): extract project notes section
- refactor(projects): extract area manager modal
- refactor(review): extract weekly review modal
- refactor(list): extract filters panel
- refactor(review): extract daily review modal
- refactor(projects): extract sidebar
- refactor(review): extract header component
- refactor(settings): extract sidebar component
- chore(settings): add error boundary wrapper
- chore(trash): add error boundary wrapper
- chore(archive): add error boundary wrapper
- chore(search): add error boundary wrapper
- chore(calendar): add error boundary wrapper
- chore(agenda): add error boundary wrapper
- chore(projects): add error boundary wrapper
- chore(review): add error boundary wrapper
- fix(search): add missing useMemo import
- chore(board): wrap view in error boundary
- perf(board): memoize sorted task list
- fix(settings): validate sync URLs
- refactor(projects): extract sortable row components
- refactor(settings): extract calendar settings hook
- ux(search): highlight matching terms
- refactor(settings): extract AI settings hook
- perf(desktop): memoize sequential project ids
- refactor(settings): extract sync state hook
- perf(sqlite): add missing task indexes
- perf(desktop): memoize next count
- feat(desktop): surface save and sync errors
- perf(core): avoid deep clone on save
- perf(core): avoid per-project order scans
- fix(desktop): improve navigation responsiveness
- fix(sync): accept folder paths for mobile/web
- fix(desktop): use project order field
- feat(desktop): sort next actions by project order
- Merge pull request #37 from brhahlen/docker_workflows
- Merge pull request #36 from brhahlen/docker
- docs: add Homebrew and Scoop install steps
- update badge in readme
- Add ghcr.io
- Merge branch 'main' into docker
- fix(ci): correct winget manifest URL check
- fix(ci): run makepkg as non-root in arch container
- Fix dockerfile to make it run again
- Fix dockerfile to make it run again
- Remove 'dev' in running cloud
- Update to add way to generate a token
- Update port to 5173
- Pin Node version to 22.21.1
- Set port to 5173
- ci: narrow docker image workflows to tags
- chore(docker): harden images and add docs
- Rename images
- Fix hyphens
- Fix cloud_data dir
- Updated Docker file to bun1.1
- Updated to proper images; removed ENV for app
- Add build dependencies
- Update paths
- Merge branch 'main' into docker
- PWA port to 80
- PWA into nginx
- Updated cloud
- Added docker files and compose
- Added workflows for automatic docker creation