mirror of
https://github.com/hesprs/obsidian-webdav-sync.git
synced 2026-07-22 14:30:27 +00:00
* 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
4.8 KiB
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.jsonstores codemap state for change detection.