.codecov.yml
.gitignore
CONTRIBUTING.md
LICENSE.md
README.md
package-lock.json
package.json
pyproject.toml
run.py
uv.lock
.github/dependabot.yml
.github/workflows/ci.yml
.github/workflows/pages.yml
.github/workflows/release.yml
.husky/pre-commit
docs/index.md
docs/.vitepress/config.mts
docs/assets/icon.ico
docs/assets/icon.png
docs/assets/jotter.sample.yaml
docs/de/index.md
docs/de/installation/development.md
docs/de/installation/precompiled.md
docs/de/user/canvas.md
docs/de/user/configuration.md
docs/de/user/format-spec.md
docs/de/user/git-sync.md
docs/de/user/import-export.md
docs/de/user/obsidian.md
docs/de/user/postponing.md
docs/de/user/safety.md
docs/de/user/searching-filtering.md
docs/de/user/shortcuts.md
docs/de/user/time-blocking.md
docs/de/user/voice-dictation.md
docs/developer/api.md
docs/developer/architecture.md
docs/developer/adr/0001-immutable-bucket-slugs.md
docs/developer/adr/0002-decline-recurring-tasks.md
docs/developer/adr/0003-arbitrary-task-slugs.md
docs/developer/adr/0004-silent-watchdog-sync.md
docs/developer/adr/0005-explicit-in-process-cqrs.md
docs/developer/adr/0006-dual-runtime-architecture.md
docs/developer/adr/0007-project-manifest-index-md.md
docs/developer/adr/0008-selective-per-project-git-sync.md
docs/developer/adr/0009-cross-platform-atomic-writes.md
docs/developer/adr/0010-open-json-canvas-format.md
docs/developer/adr/0011-cross-tab-broadcast-sync.md
docs/developer/adr/0012-vault-abstraction-and-simplified-git-sync.md
docs/developer/adr/0013-frontend-feature-slices.md
docs/developer/adr/0014-periodic-scan-instead-of-watcher.md
docs/developer/adr/0015-index-as-disposable-cache.md
docs/developer/adr/0016-rewrite-backend-from-go-to-python.md
docs/installation/development.md
docs/installation/precompiled.md
docs/public/logo.png
docs/user/canvas.md
docs/user/configuration.md
docs/user/format-spec.md
docs/user/git-sync.md
docs/user/import-export.md
docs/user/obsidian.md
docs/user/postponing.md
docs/user/safety.md
docs/user/searching-filtering.md
docs/user/shortcuts.md
docs/user/time-blocking.md
docs/user/voice-dictation.md
frontend/.gitignore
frontend/.prettierrc
frontend/README.md
frontend/capacitor.config.ts
frontend/eslint.config.js
frontend/index.html
frontend/package-lock.json
frontend/package.json
frontend/playwright.config.ts
frontend/tsconfig.app.json
frontend/tsconfig.json
frontend/tsconfig.node.json
frontend/vite.config.ts
frontend/android/.gitignore
frontend/android/build.gradle
frontend/android/capacitor.settings.gradle
frontend/android/gradle.properties
frontend/android/gradlew
frontend/android/gradlew.bat
frontend/android/settings.gradle
frontend/android/variables.gradle
frontend/android/app/.gitignore
frontend/android/app/build.gradle
frontend/android/app/capacitor.build.gradle
frontend/android/app/proguard-rules.pro
frontend/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java
frontend/android/app/src/main/AndroidManifest.xml
frontend/android/app/src/main/java/io/github/simon123h/jotter/MainActivity.java
frontend/android/app/src/main/java/io/github/simon123h/jotter/StoragePermissionPlugin.java
frontend/android/app/src/main/res/drawable/ic_launcher_background.xml
frontend/android/app/src/main/res/drawable/splash.png
frontend/android/app/src/main/res/drawable-land-hdpi/splash.png
frontend/android/app/src/main/res/drawable-land-mdpi/splash.png
frontend/android/app/src/main/res/drawable-land-xhdpi/splash.png
frontend/android/app/src/main/res/drawable-land-xxhdpi/splash.png
frontend/android/app/src/main/res/drawable-land-xxxhdpi/splash.png
frontend/android/app/src/main/res/drawable-port-hdpi/splash.png
frontend/android/app/src/main/res/drawable-port-mdpi/splash.png
frontend/android/app/src/main/res/drawable-port-xhdpi/splash.png
frontend/android/app/src/main/res/drawable-port-xxhdpi/splash.png
frontend/android/app/src/main/res/drawable-port-xxxhdpi/splash.png
frontend/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
frontend/android/app/src/main/res/layout/activity_main.xml
frontend/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
frontend/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
frontend/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
frontend/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
frontend/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
frontend/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
frontend/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
frontend/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
frontend/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
frontend/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
frontend/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
frontend/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
frontend/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
frontend/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
frontend/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
frontend/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
frontend/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
frontend/android/app/src/main/res/values/ic_launcher_background.xml
frontend/android/app/src/main/res/values/strings.xml
frontend/android/app/src/main/res/values/styles.xml
frontend/android/app/src/main/res/xml/file_paths.xml
frontend/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java
frontend/android/gradle/wrapper/gradle-wrapper.jar
frontend/android/gradle/wrapper/gradle-wrapper.properties
frontend/public/favicon.svg
frontend/public/manifest.json
frontend/public/pwa-192.png
frontend/public/pwa-512.png
frontend/public/sw.js
frontend/src/App.vue
frontend/src/api.ts
frontend/src/capabilities.ts
frontend/src/env.d.ts
frontend/src/main.ts
frontend/src/platform.ts
frontend/src/router.ts
frontend/src/style.css
frontend/src/test-setup.ts
frontend/src/types.ts
frontend/src/__tests__/api.spec.ts
frontend/src/__tests__/capabilities.spec.ts
frontend/src/__tests__/factories.ts
frontend/src/__tests__/router.spec.ts
frontend/src/components/layout/MainLayout.vue
frontend/src/components/layout/MobileNavBar.vue
frontend/src/components/layout/NavigationBar.vue
frontend/src/components/layout/ProjectLayout.vue
frontend/src/components/layout/ProjectSidebar.vue
frontend/src/components/layout/TimelineLayout.vue
frontend/src/components/layout/__tests__/MobileNavBar.spec.ts
frontend/src/components/layout/__tests__/NavigationBar.spec.ts
frontend/src/components/layout/__tests__/ProjectSidebar.spec.ts
frontend/src/components/modals/ColumnEditModal.vue
frontend/src/components/modals/FilterModal.vue
frontend/src/components/modals/ModalRegistry.vue
frontend/src/components/modals/MoveTasksConfirmModal.vue
frontend/src/components/modals/ProjectEditModal.vue
frontend/src/components/modals/TaskImportModal.vue
frontend/src/components/modals/TimeMachineModal.vue
frontend/src/components/modals/VaultManageModal.vue
frontend/src/components/modals/__tests__/ColumnEditModal.spec.ts
frontend/src/components/modals/__tests__/FilterModal.spec.ts
frontend/src/components/modals/__tests__/MoveTasksConfirmModal.spec.ts
frontend/src/components/modals/__tests__/ProjectEditModal.spec.ts
frontend/src/components/modals/__tests__/TimeMachineModal.spec.ts
frontend/src/components/ui/BaseModal.vue
frontend/src/components/ui/BulkActionBar.vue
frontend/src/components/ui/GenericColumn.vue
frontend/src/components/ui/GlobalDialog.vue
frontend/src/components/ui/KeywordHighlightInput.vue
frontend/src/components/ui/MarkdownEditor.vue
frontend/src/components/ui/SnapScroller.vue
frontend/src/components/ui/TagInput.vue
frontend/src/components/ui/TaskCard.vue
frontend/src/components/ui/ToastContainer.vue
frontend/src/components/ui/__tests__/BulkActionBar.spec.ts
frontend/src/components/ui/__tests__/TagInput.spec.ts
frontend/src/components/ui/__tests__/TaskCard.spec.ts
frontend/src/components/ui/__tests__/ToastContainer.spec.ts
frontend/src/components/ui/bulk/BulkActionMenu.vue
frontend/src/components/ui/bulk/BulkDatePicker.vue
frontend/src/components/ui/bulk/BulkMoreSheet.vue
frontend/src/components/ui/bulk/BulkTagMenu.vue
frontend/src/components/ui/bulk/types.ts
frontend/src/components/ui/bulk/__tests__/BulkDatePicker.spec.ts
frontend/src/components/ui/bulk/__tests__/BulkMoreSheet.spec.ts
frontend/src/components/ui/task-card/ChecklistProgress.vue
frontend/src/components/ui/task-card/TaskCardChecklist.vue
frontend/src/components/ui/task-card/TaskCardFooter.vue
frontend/src/components/views/BoardView.vue
frontend/src/components/views/HomeView.vue
frontend/src/components/views/ListView.vue
frontend/src/components/views/MatrixView.vue
frontend/src/components/views/ReviewView.vue
frontend/src/components/views/TagView.vue
frontend/src/components/views/TimeView.vue
frontend/src/components/views/__tests__/ReviewView.spec.ts
frontend/src/composables/useAndroidBackButton.ts
frontend/src/composables/useBoardNavigation.ts
frontend/src/composables/useBuckets.ts
frontend/src/composables/useDialog.ts
frontend/src/composables/useDragSelect.ts
frontend/src/composables/useFileDrop.ts
frontend/src/composables/useI18n.ts
frontend/src/composables/useKeyboardShortcuts.ts
frontend/src/composables/useLongPress.ts
frontend/src/composables/useProjects.ts
frontend/src/composables/useSpeechRecognition.ts
frontend/src/composables/useTaskAutocomplete.ts
frontend/src/composables/useTaskExport.ts
frontend/src/composables/useTaskFilters.ts
frontend/src/composables/useTaskMutations.ts
frontend/src/composables/useTaskSelection.ts
frontend/src/composables/useToast.ts
frontend/src/composables/__tests__/useBoardNavigation.spec.ts
frontend/src/composables/__tests__/useBuckets.spec.ts
frontend/src/composables/__tests__/useDialog.spec.ts
frontend/src/composables/__tests__/useFileDrop.spec.ts
frontend/src/composables/__tests__/useI18n.spec.ts
frontend/src/composables/__tests__/useKeyboardShortcuts.spec.ts
frontend/src/composables/__tests__/useLongPress.spec.ts
frontend/src/composables/__tests__/useSpeechRecognition.spec.ts
frontend/src/composables/__tests__/useTaskMutations.spec.ts
frontend/src/features/canvas/components/CanvasEdge.vue
frontend/src/features/canvas/components/CanvasSidebar.vue
frontend/src/features/canvas/components/CanvasToolbar.vue
frontend/src/features/canvas/components/CanvasView.vue
frontend/src/features/canvas/components/GroupNode.vue
frontend/src/features/canvas/components/TaskNode.vue
frontend/src/features/canvas/components/TextNode.vue
frontend/src/features/canvas/constants/canvasColors.ts
frontend/src/features/canvas/stores/canvas.ts
frontend/src/features/canvas/stores/__tests__/canvas.spec.ts
frontend/src/features/settings/components/GeneralSettings.vue
frontend/src/features/settings/components/LanguageSettings.vue
frontend/src/features/settings/components/SettingsView.vue
frontend/src/features/settings/components/SystemInfoSettings.vue
frontend/src/features/settings/components/TagColorSettings.vue
frontend/src/features/settings/components/ThemeSettings.vue
frontend/src/features/settings/components/TimeblockSettings.vue
frontend/src/features/task-editor/components/TaskAttachments.vue
frontend/src/features/task-editor/components/TaskChecklist.vue
frontend/src/features/task-editor/components/TaskCreateModal.vue
frontend/src/features/task-editor/components/TaskDetailFooter.vue
frontend/src/features/task-editor/components/TaskDetailModal.vue
frontend/src/features/task-editor/components/TaskDetailView.vue
frontend/src/features/task-editor/components/TaskEditFields.vue
frontend/src/features/task-editor/components/TaskImageLightbox.vue
frontend/src/features/task-editor/components/__tests__/TaskCreateModal.spec.ts
frontend/src/features/task-editor/components/__tests__/TaskDetailModal.spec.ts
frontend/src/features/task-editor/composables/useTaskDetailActions.ts
frontend/src/features/task-editor/composables/useTaskEditor.ts
frontend/src/features/task-editor/composables/__tests__/useTaskDetailActions.spec.ts
frontend/src/features/task-import/components/StepColumnMapper.vue
frontend/src/features/task-import/components/StepProgress.vue
frontend/src/features/task-import/components/StepRowPreview.vue
frontend/src/features/task-import/components/StepSummary.vue
frontend/src/features/task-import/components/StepUpload.vue
frontend/src/features/task-import/composables/useImportWizard.ts
frontend/src/features/task-import/composables/__tests__/useImportWizard.spec.ts
frontend/src/features/task-triage/components/TriageBucketPicker.vue
frontend/src/features/task-triage/components/TriageCard.vue
frontend/src/features/task-triage/components/TriageShortcutsPanel.vue
frontend/src/features/task-triage/components/TriageSummary.vue
frontend/src/features/task-triage/components/TriageView.vue
frontend/src/features/task-triage/components/triageAnimations.css
frontend/src/features/task-triage/components/__tests__/TriageParts.spec.ts
frontend/src/features/task-triage/components/__tests__/TriageView.spec.ts
frontend/src/features/task-triage/composables/useTriageSession.ts
frontend/src/features/task-triage/composables/__tests__/useTriageSession.spec.ts
frontend/src/features/task-triage/constants/triageShortcuts.ts
frontend/src/features/task-triage/utils/triageSort.ts
frontend/src/features/task-triage/utils/__tests__/triageSort.spec.ts
frontend/src/features/timeblock/components/TimeblockCard.vue
frontend/src/features/timeblock/components/TimeblockDayNav.vue
frontend/src/features/timeblock/components/TimeblockEditModal.vue
frontend/src/features/timeblock/components/TimeblockSidebar.vue
frontend/src/features/timeblock/components/__tests__/TimeblockEditModal.spec.ts
frontend/src/features/timeblock/components/__tests__/TimeblockSidebar.spec.ts
frontend/src/features/timeblock/composables/useActiveDay.ts
frontend/src/features/timeblock/composables/useCurrentTime.ts
frontend/src/features/timeblock/composables/useTimeblockDrag.ts
frontend/src/features/timeblock/composables/useTimeblockTasks.ts
frontend/src/features/timeblock/composables/__tests__/useActiveDay.spec.ts
frontend/src/features/timeblock/composables/__tests__/useTimeblockDrag.spec.ts
frontend/src/features/timeblock/stores/timeblock.ts
frontend/src/features/timeblock/stores/__tests__/timeblock.spec.ts
frontend/src/features/timeblock/utils/timeGrid.ts
frontend/src/features/timeblock/utils/__tests__/timeGrid.spec.ts
frontend/src/locales/de.ts
frontend/src/locales/en.ts
frontend/src/locales/__tests__/i18nAudit.spec.ts
frontend/src/storage/capacitorFsAdapter.ts
frontend/src/storage/connectionState.ts
frontend/src/storage/demoAdapter.ts
frontend/src/storage/dexieDb.ts
frontend/src/storage/httpAdapter.ts
frontend/src/storage/index.ts
frontend/src/storage/markdownParser.ts
frontend/src/storage/preferencesStorage.ts
frontend/src/storage/storagePermission.ts
frontend/src/storage/types.ts
frontend/src/storage/__tests__/capacitorFsAdapter.spec.ts
frontend/src/storage/__tests__/demoAdapter.spec.ts
frontend/src/storage/__tests__/formatConformance.spec.ts
frontend/src/storage/__tests__/httpAdapter.spec.ts
frontend/src/storage/__tests__/markdownParser.spec.ts
frontend/src/stores/modal.ts
frontend/src/stores/project.ts
frontend/src/stores/selection.ts
frontend/src/stores/settings.ts
frontend/src/stores/toast.ts
frontend/src/stores/ui.ts
frontend/src/stores/vault.ts
frontend/src/stores/__tests__/modal.spec.ts
frontend/src/stores/__tests__/selection.spec.ts
frontend/src/stores/__tests__/settings.spec.ts
frontend/src/stores/__tests__/toast.spec.ts
frontend/src/stores/__tests__/ui.spec.ts
frontend/src/utils/broadcast.ts
frontend/src/utils/checklist.ts
frontend/src/utils/constants.ts
frontend/src/utils/dsl.ts
frontend/src/utils/effects.ts
frontend/src/utils/haptics.ts
frontend/src/utils/markdown.ts
frontend/src/utils/tagStyles.ts
frontend/src/utils/tagUtils.ts
frontend/src/utils/taskColors.ts
frontend/src/utils/titleParser.ts
frontend/src/utils/__tests__/broadcast.spec.ts
frontend/src/utils/__tests__/checklist.spec.ts
frontend/src/utils/__tests__/dsl.spec.ts
frontend/src/utils/__tests__/effects.spec.ts
frontend/src/utils/__tests__/haptics.spec.ts
frontend/src/utils/__tests__/markdown.spec.ts
frontend/src/utils/__tests__/tagStyles.spec.ts
frontend/src/utils/__tests__/tagUtils.spec.ts
frontend/src/utils/__tests__/titleParser.spec.ts
frontend/tests/e2e/kanban.spec.ts
scripts/combine-coverage.js
scripts/loc_history.py
scripts/plot_loc.py
spec/FORMAT.md
spec/README.md
spec/fixtures/projects/full.json
spec/fixtures/projects/full.md
spec/fixtures/projects/legacy-keys.json
spec/fixtures/projects/legacy-keys.md
spec/fixtures/projects/minimal.json
spec/fixtures/projects/minimal.md
spec/fixtures/projects/no-frontmatter.json
spec/fixtures/projects/no-frontmatter.md
spec/fixtures/projects/unknown-keys.json
spec/fixtures/projects/unknown-keys.md
spec/fixtures/tasks/attachments-json-string.json
spec/fixtures/tasks/attachments-json-string.md
spec/fixtures/tasks/body-with-rules.json
spec/fixtures/tasks/body-with-rules.md
spec/fixtures/tasks/due-datetime-trimmed.json
spec/fixtures/tasks/due-datetime-trimmed.md
spec/fixtures/tasks/due-keyword-camelcase.json
spec/fixtures/tasks/due-keyword-camelcase.md
spec/fixtures/tasks/due-keyword-moves-to-planned.json
spec/fixtures/tasks/due-keyword-moves-to-planned.md
spec/fixtures/tasks/empty-frontmatter.json
spec/fixtures/tasks/empty-frontmatter.md
spec/fixtures/tasks/full.json
spec/fixtures/tasks/full.md
spec/fixtures/tasks/id-from-frontmatter.json
spec/fixtures/tasks/id-from-frontmatter.md
spec/fixtures/tasks/invalid-values-dropped.json
spec/fixtures/tasks/invalid-values-dropped.md
spec/fixtures/tasks/invalid-yaml.json
spec/fixtures/tasks/invalid-yaml.md
spec/fixtures/tasks/legacy-keys.json
spec/fixtures/tasks/legacy-keys.md
spec/fixtures/tasks/minimal.json
spec/fixtures/tasks/minimal.md
spec/fixtures/tasks/no-frontmatter.json
spec/fixtures/tasks/no-frontmatter.md
spec/fixtures/tasks/planning-keywords.json
spec/fixtures/tasks/planning-keywords.md
spec/fixtures/tasks/position-string.json
spec/fixtures/tasks/position-string.md
spec/fixtures/tasks/priority-case.json
spec/fixtures/tasks/priority-case.md
spec/fixtures/tasks/status-case-preserved.json
spec/fixtures/tasks/status-case-preserved.md
spec/fixtures/tasks/tags-as-string.json
spec/fixtures/tasks/tags-as-string.md
spec/fixtures/tasks/tags-normalized.json
spec/fixtures/tasks/tags-normalized.md
spec/fixtures/tasks/unicode.json
spec/fixtures/tasks/unicode.md
spec/fixtures/tasks/unknown-keys.json
spec/fixtures/tasks/unknown-keys.md
src/jotter/__init__.py
src/jotter/__main__.py
src/jotter/_version.py
src/jotter/app.py
src/jotter/config.py
src/jotter/logging_setup.py
src/jotter/main.py
src/jotter/mcp_server.py
src/jotter/dist/favicon.svg
src/jotter/dist/index.html
src/jotter/dist/manifest.json
src/jotter/dist/pwa-192.png
src/jotter/dist/pwa-512.png
src/jotter/dist/sw.js
src/jotter/dist/assets/BoardView-DPbfNu8S.js
src/jotter/dist/assets/CanvasView-BDfiQ6r3.js
src/jotter/dist/assets/CanvasView-DZSxx-YA.css
src/jotter/dist/assets/GenericColumn-ByHZU5aZ.js
src/jotter/dist/assets/GenericColumn-Cp8Eir0F.css
src/jotter/dist/assets/HomeView-C96moniu.css
src/jotter/dist/assets/HomeView-CSlLP6Y4.js
src/jotter/dist/assets/ListView-BvsPI20w.js
src/jotter/dist/assets/MarkdownEditor-Dw1c_PRw.css
src/jotter/dist/assets/MarkdownEditor-DyQ5Pm53.js
src/jotter/dist/assets/MatrixView-BgxDlEXZ.js
src/jotter/dist/assets/MatrixView-KELVqO_3.css
src/jotter/dist/assets/ReviewView-CkpXM4wn.js
src/jotter/dist/assets/SettingsView-CU1V9qX5.js
src/jotter/dist/assets/TagView-BpMI5l3v.js
src/jotter/dist/assets/TaskCard-AxLt4x-W.css
src/jotter/dist/assets/TaskCard-BCkWIz3N.js
src/jotter/dist/assets/TaskDetailModal-C5GdD5v-.css
src/jotter/dist/assets/TaskDetailModal-CIJA1D1N.js
src/jotter/dist/assets/TimeView-DB8ohGn8.js
src/jotter/dist/assets/TriageView-BQKcM8vb.css
src/jotter/dist/assets/TriageView-BsLKPgjF.js
src/jotter/dist/assets/definitions-DlpntO5o.js
src/jotter/dist/assets/dist-B-fBiTU6.js
src/jotter/dist/assets/dist-JJ_68fnb.js
src/jotter/dist/assets/index-DFtztCxS.css
src/jotter/dist/assets/index-QiHHWSN5.js
src/jotter/dist/assets/inter-cyrillic-ext-wght-italic-B5xAaiFk.woff2
src/jotter/dist/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2
src/jotter/dist/assets/inter-cyrillic-wght-italic-DzZdc28x.woff2
src/jotter/dist/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2
src/jotter/dist/assets/inter-greek-ext-wght-italic-DcOpz6Lw.woff2
src/jotter/dist/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2
src/jotter/dist/assets/inter-greek-wght-italic-CILZdfAp.woff2
src/jotter/dist/assets/inter-greek-wght-normal-CkhJZR-_.woff2
src/jotter/dist/assets/inter-latin-ext-wght-italic-0pjOp8NU.woff2
src/jotter/dist/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2
src/jotter/dist/assets/inter-latin-wght-italic-DpCbqKDY.woff2
src/jotter/dist/assets/inter-latin-wght-normal-Dx4kXJAl.woff2
src/jotter/dist/assets/inter-vietnamese-wght-italic-K3WlGtc8.woff2
src/jotter/dist/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2
src/jotter/dist/assets/marked.esm-Of0D6mTi.js
src/jotter/dist/assets/paperclip-BR7ZM5_-.js
src/jotter/dist/assets/tagStyles-3kDpyWjO.js
src/jotter/dist/assets/useBuckets-BbKSn5gP.js
src/jotter/dist/assets/useTaskMutations-B9_qXUDI.js
src/jotter/dist/assets/useToast-CtKitPwi.js
src/jotter/dist/assets/web-B4XiUPid.js
src/jotter/dist/assets/web-DL1xB-YI.js
src/jotter/dist/assets/web-SN-aL2rb.js
src/jotter/dist/assets/web-h6soolHG.js
src/jotter/dist/assets/xlsx-CsRylhoj.js
src/jotter/features/buckets/__init__.py
src/jotter/features/buckets/domain.py
src/jotter/features/buckets/repo.py
src/jotter/features/buckets/router.py
src/jotter/features/buckets/schemas.py
src/jotter/features/buckets/service.py
src/jotter/features/canvas/__init__.py
src/jotter/features/canvas/router.py
src/jotter/features/canvas/schemas.py
src/jotter/features/canvas/service.py
src/jotter/features/projects/__init__.py
src/jotter/features/projects/domain.py
src/jotter/features/projects/manifest.py
src/jotter/features/projects/repo.py
src/jotter/features/projects/router.py
src/jotter/features/projects/schemas.py
src/jotter/features/projects/service.py
src/jotter/features/settings/__init__.py
src/jotter/features/settings/router.py
src/jotter/features/settings/schemas.py
src/jotter/features/settings/service.py
src/jotter/features/sync/__init__.py
src/jotter/features/sync/git_adapter.py
src/jotter/features/sync/router.py
src/jotter/features/sync/scheduler.py
src/jotter/features/sync/service.py
src/jotter/features/tasks/__init__.py
src/jotter/features/tasks/command_service.py
src/jotter/features/tasks/disk_repo.py
src/jotter/features/tasks/domain.py
src/jotter/features/tasks/projector.py
src/jotter/features/tasks/query_service.py
src/jotter/features/tasks/router.py
src/jotter/features/tasks/schemas.py
src/jotter/features/tasks/service.py
src/jotter/features/tasks/sqlite_repo.py
src/jotter/features/timeblock/__init__.py
src/jotter/features/timeblock/repo.py
src/jotter/features/timeblock/router.py
src/jotter/features/timeblock/schemas.py
src/jotter/features/timeblock/service.py
src/jotter/features/vaults/__init__.py
src/jotter/features/vaults/domain.py
src/jotter/features/vaults/registry.py
src/jotter/features/vaults/router.py
src/jotter/features/vaults/schemas.py
src/jotter/features/vaults/service.py
src/jotter/shared/__init__.py
src/jotter/shared/db.py
src/jotter/shared/deps.py
src/jotter/shared/exceptions.py
src/jotter/shared/frontmatter.py
src/jotter/shared/fs.py
src/jotter/shared/slug.py
src/jotter/shared/ulid.py
src/jotter/shared/unset.py
src/jotter/shared/yaml_io.py
src/jotter_app.egg-info/PKG-INFO
src/jotter_app.egg-info/SOURCES.txt
src/jotter_app.egg-info/dependency_links.txt
src/jotter_app.egg-info/entry_points.txt
src/jotter_app.egg-info/requires.txt
src/jotter_app.egg-info/scm_file_list.json
src/jotter_app.egg-info/scm_version.json
src/jotter_app.egg-info/top_level.txt
tests/conftest.py
tests/test_api.py
tests/test_architecture.py
tests/test_bucket_service.py
tests/test_canvas_routes.py
tests/test_canvas_service.py
tests/test_config.py
tests/test_connection_pool.py
tests/test_domain.py
tests/test_format_conformance.py
tests/test_fs.py
tests/test_git_service.py
tests/test_logging_setup.py
tests/test_mcp_server.py
tests/test_sync_scheduler.py
tests/test_sync_service.py
tests/test_task_service.py
tests/test_timeblocks.py
tests/test_vault_service.py