Skip to content

🏗️ Architecture et Systèmes de Build

Le projet SK_CAPACITOR_DISPLAY repose sur une stratégie de build multi-cibles permettant de servir une interface unique (SvelteKit) sur un parc de téléviseurs extrêmement hétérogène (des modèles de 2014 aux plus récents).


🧭 Sommaire de la section

GuideDescription
🚀 Cibles et CommandesListe des environnements (Android, Tizen, Legacy) et commandes associées.
⚙️ Configuration TechniqueDétails de la logique Vite/Svelte, bundling et variables d'environnement.
📊 Matrice de CompatibilitéSupport des navigateurs, APIs requises et limitations par plateforme.
👵 Guide Spécifique Legacy 34Focus sur la cible la plus restrictive (Chrome 34) et ses polyfills.
🧩 Support Svelte LegacyMémo sur Svelte 4, Svelte 5 et le risque des builds TV legacy.

💡 Philosophie du Build

Plutôt que de maintenir plusieurs codebases, nous utilisons Vite et SvelteKit pour transpiler et adapter l'application selon la cible :

  1. Agnosticisme : Le code source est écrit en TypeScript moderne.
  2. Transpilation à la demande : La variable BUILD_TARGET oriente la sévérité de la transpilation.
  3. Bundling Adaptatif : Passage automatique d'un mode "Code Splitting" (moderne) à un mode "Single Bundle" (legacy/Tizen) pour garantir la compatibilité des imports.
  4. Polyfilling Ciblé : Les polyfills lourds (core-js, regenerator) ne sont chargés que sur les builds qui en ont réellement besoin.

Retour à l'accueil