Multi-device sync
DecksMD syncs alongside your vault — iCloud Drive, Obsidian Sync, Dropbox, Syncthing, anything that shares the vault folder works. You can review on your phone and your desktop without losing history on either.
The two files
Section titled “The two files”DecksMD uses two files to do this:
<plugin folder>/flashcards.db— the SQLite database holding every card’s FSRS state and full review history. This is the cold-storage snapshot, persisted to disk every ~30 minutes when there’s new activity (and when the app is backgrounded or unloaded).<deviceId>.deckssynclog— one small append-only JSONL file per device, in your vault root. Every state change — rating a card, editing a profile, creating a custom deck, starting or ending a session — is recorded as a single short line. Other devices read these files on app focus and replay the entries into their own database.
The custom .deckssynclog extension keeps the file out of Obsidian’s file explorer; you’ll see it in Finder/Files but it never shows up as a note.
With the DecksMD app
Section titled “With the DecksMD app”The DecksMD app on iPhone, iPad and Android keeps its own database in .decksmd/flashcards.db in your vault and writes its own sync log next to the plugin’s. Reviews and other changes travel through the logs.
Decks from the deck directory travel through the databases: each side reads the other’s, so a deck added in the app appears in Obsidian with the reviews you did there, and a deck added in Obsidian appears in the app. Obsidian picks it up when it starts and when its window comes back into focus (Decks 2.12.2 or later).
Both keep their files in the same folders at the vault root, so they travel with the vault: Decks media for the images, audio and video of deck directory decks, and Decks AI sources for copies of the PDFs attached to AI sessions. Obsidian also keeps PDF page text in Decks OCR. Each folder can be changed under Settings → File locations.
Why it feels fast
Section titled “Why it feels fast”iCloud and other file-sync providers ship these small text logs dramatically faster than the binary database — typically seconds instead of minutes. That’s why the cross-device “I just rated this on my Mac, now I see it on my iPhone” lag is usually 15–30 seconds rather than 1–2 minutes.
The log self-truncates to the last 30 days on plugin load. Long-running history (months or years) is preserved in the binary database, which still syncs on its own slower schedule.
Conflict handling
Section titled “Conflict handling”If your sync provider creates conflict-copy files (for example iCloud’s <deviceId> (Mac's conflicted copy 2026-05-13).deckssynclog), DecksMD detects them, applies any unique entries, and renames the original aside as *.consumed-<timestamp> so it isn’t re-processed.
Under the hood, when the database is saved, DecksMD merges before saving: review history from both devices is preserved, and for cards and decks the newer version wins. This is what lets two devices edit independently without clobbering each other.