Analysis updated 2026-05-18
Sync podcast subscriptions and listening progress across devices without running a server.
Use an existing file-sync tool like Dropbox or Syncthing as the backend for podcast sync.
Build a podcast app client that implements the FilePodSync protocol.
| racuna/filepodsyc | 0xhassaan/nn-from-scratch | 3ks/embedoc | |
|---|---|---|---|
| Stars | 0 | 0 | — |
| Language | Python | Python | Python |
| Last pushed | — | — | 2023-06-08 |
| Maintenance | — | — | Dormant |
| Setup difficulty | — | moderate | hard |
| Complexity | — | 4/5 | 1/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
FilePodSync (FPS) is a protocol specification and reference implementation for syncing podcast subscriptions and playback state across multiple devices, without needing a server. The problem it solves is that existing podcast sync tools like gPodder.net, Nextcloud-gPodder, and oPodSync all depend on a running server somewhere, which is fragile to maintain and requires technical expertise to self-host. FilePodSync replaces the server with a plain folder that any file-syncing service can replicate: Dropbox, Syncthing, Google Drive, Filen, iCloud, or a NAS (a personal home file server). The sync state lives entirely in a set of JSON files inside that shared folder. There is no API, no OAuth login, and no server software to run. Each device writes only to its own files and reads from all devices' files when merging. For subscriptions and episode states (like play position or "played" status), the protocol uses a strategy called Last-Write-Wins at Element Level: each record carries a timestamp, and the most recent change to any individual episode wins when two devices disagree. For the playback queue, the list of episodes you plan to listen to next, it uses an operation log instead, because "last write wins" would silently drop episodes added offline on one device. To handle offline edits safely, the sync cycle tracks three states: the last version written to disk, a merged version combining that with any changes from other devices, and a final version that layers the user's own unsaved actions on top. This ensures that a pause or subscription made while offline is not overwritten when the device reconnects. The full README is longer than what was provided.
A serverless protocol for syncing podcast subscriptions and playback across devices using a shared folder instead of a server.
Mainly Python. The stack also includes JSON, Dropbox, Syncthing.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.