Client
- FlutterCross-platform shell for mobile, desktop and TV.
- DartUI, routing and platform integration layer.
- RiverpodPredictable provider, catalog and playback state.
Client IPTV multiplateforme avec backend Rust.
App média Flutter avec media_kit/libmpv, Riverpod, Dio, secure storage et Chromecast, adossée à une API Rust Axum avec SeaORM, auth Argon2 et payloads chiffrés AES-GCM.
Les apps IPTV sont souvent fragiles : mauvaise gestion des sources, playback moyen, peu de cache et peu d'attention à la sécurité des comptes.
Crabcast est construit comme un client natif avec un backend capable de normaliser les fournisseurs et protéger les données sensibles.
Flutter porte l'expérience player sur desktop et mobile tandis que Riverpod garde l'état fournisseur, playlist et lecture prévisible.
L'API Rust gère les comptes, les données fournisseur chiffrées et la synchronisation en base.
Le support libmpv donne une base de playback plus solide sur plusieurs plateformes.
Les credentials et URLs source sont sensibles, donc AES-GCM protège les données à la frontière API.
Les gros catalogues VOD et live ont besoin de cache pour garder une navigation rapide et robuste.