A new library provider for finding and playing podcasts via fyyd's keyless public API (api.fyyd.de), mounted at /fyyd and modelled on ytdy. A podcast search returns podcasts, each a container of episodes, so the tree carries one extra level: search-term -> podcast -> episodes-as-tracks, plus a fixed /fyyd/hot featured browse. An episode is a track whose enclosure URL the audio player streams directly -- no sidecar, no proto change, no new ProviderCommand. Search terms are creatable/renamable/ deletable in memory like tidal and youtube; podcasts and their episode lists are queueable and downloadable (W captures work out of the box). All network access goes through a Fyyd trait (fyyd/src/api.rs), faked in tests, so the provider logic runs with no network. Init is non-fatal and needs no credentials; every call is timeout-bounded and every listing capped. Wired into ProviderOrchestrator and the crabidy-server provider toggles alongside the other providers. Dev-flow artifacts: architecture/, quality/, and plan/fyyd-provider.md, plus a plan/summary.md entry. Docs updated across docs/src and the README. Deferred: live validation of the api.fyyd.de field shapes (offline unit suite cannot cover it) -- left as an open gate. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| book.toml | ||
| mdbook-admonish.css | ||