How blackdeath-s/harbor works
Harbor is a Tauri/React desktop client for the Stremio addon ecosystem, with a native media player and discovery features. Its main workflow is browsing content, resolving addon or library streams, filtering and ranking candidates, then playing a selected stream. The sampled code supports the stream-picker-to-ranking flow and local torrent-engine bridge; other branches reflect README capabilities and tree paths, but their internal wiring was not sampled.
Main entry points: App.tsx Harbor app · use-pipeline-result.ts Stream picker · pipeline.ts Stream pipeline · mpv.rs Native player
Components 21
Discovery and catalog
- Harbor app
src/App.tsx - Catalog browsing
src/lib/catalog-browse.ts - Discovery feed
src/lib/feed/index.ts - Anime features
src/lib/anime-detect.ts
Stream resolution
- Addon store
src/lib/addons-store/store.ts - Stream picker
src/views/play-picker/use-pipeline-result.ts - Episode request
src/lib/streams/episode-pipeline-input.ts - Stream pipeline
src/lib/streams/pipeline.ts - Trust and ranking
harbor-core/src/lib.rs - Addon streams
src/lib/streams/pipeline.ts - Library streams
src/lib/streams/pipeline.ts
Playback and engines
- Native player
src-tauri/src/mpv.rs - Torrent engine
src-tauri/src/torrent_engine.rs - Engine bridge
src/lib/torrent/local-engine.ts - Casting
src-tauri/src/cast.rs
Live and social
- Live TV and DVR
src/lib/iptv/store.ts - Watch parties
src/components/together-modal.tsx
Extensions and personalization
- Themes and layouts
src/lib/custom-themes.ts - Tracking integrations
src/lib/anilist/sync.ts
Other components
- Viewer
- Stremio ecosystem
Connections 20
- Viewer → Harbor app: uses
- Harbor app → Catalog browsing: browses
- Harbor app → Discovery feed: shows
- Harbor app → Addon store: manages
- Viewer → Stream picker: selects title
- Stream picker → Episode request: builds request
- Stream picker → Stream pipeline: runs
- Stream pipeline → Addon streams: fetches
- Stream pipeline → Library streams: fetches
- Stream pipeline → Trust and ranking: filters and scores
- Stremio ecosystem → Addon store: provides addons
- Stream picker → Native player: plays selection
- Native player → Engine bridge: requests torrent stream
- Engine bridge → Torrent engine: invokes commands
- Viewer → Live TV and DVR: watches live
- Viewer → Watch parties: starts party
- Viewer → Anime features: explores anime
- Viewer → Themes and layouts: customizes
- Viewer → Tracking integrations: syncs lists
- Viewer → Casting: casts playback