hesprs_obsidian-webdav-sync/codemap.md
Hēsperus 8690e03fe4
refactor(all): shift to bun (#153)
* refactor(all): shift to bun

* fix(lint): run lint

* fix(test): organize mocks

* fix(mock): restore mocks after declaration

* fix(mock): reverse mock what is mocked
2026-06-07 17:36:49 +08:00

4.8 KiB

Repository Atlas: Obsidian WebDAV Sync

Project Responsibility

Obsidian plugin for bidirectional WebDAV sync. Bootstraps stores, services, UI, and sync engine around a WebDAV/vault abstraction.

System Entry Points

  • src/index.ts: Plugin bootstrap, service wiring, sync lifecycle.
  • manifest.json: Obsidian plugin metadata.
  • package.json: scripts, dependencies, build/test/lint entrypoints.
  • tsdown.config.ts, tsconfig.json, vitest.config.ts, uno.config.ts: toolchain config.
  • scripts/version-bump.ts, scripts/release-notes.ts: release automation.

Repository Directory Map

Directory Responsibility Summary Detailed Map
src/ Root source tree; wires plugin lifecycle, stores, services, and sync orchestration. View Map
src/components/ UI layer for modals, ribbon controls, explorer, and file tree surfaces. View Map
src/components/explorer/ Explorer UI composition and action propagation. View Map
src/components/explorer/components/ File list, folder, file, and new-folder primitives. View Map
src/components/fileTree/ Tree model construction, selection handling, and tree app surface. View Map
src/composable/ Shared composable abstractions and state helpers. View Map
src/events/ Sync-run and terminate event contracts. View Map
src/fs/ Filesystem abstraction layer for vault and WebDAV adapters. View Map
src/fs/vault/ Vault traversal and metadata normalization. View Map
src/fs/webdav/ WebDAV request construction, traversal, and helpers. View Map
src/platform/ Cross-platform path, binary, and crypto helpers. View Map
src/services/ Scheduler, executor, WebDAV client, observability, and commands. View Map
src/settings/ Settings schema, controls, and settings tab. View Map
src/storage/ IndexedDB-backed sync state and chunk persistence. View Map
src/sync/ Sync engine coordination and optimization pipeline. View Map
src/sync/decision/ Decision interface and two-way strategy. View Map
src/sync/tasks/ Task hierarchy for push/pull/remove/mkdir/merge execution. View Map
src/sync/utils/ Pure helpers for merge, chunking, ordering, and optimization. View Map
src/utils/ Generic helpers shared across modules. View Map
scripts/ Release/version automation scripts. View Map

Notes

  • Tests, docs, build output, and translations stay excluded from codemap scope.
  • blueprint/codemap.json stores codemap state for change detection.