LiveWall
Des fonds d’écran vidéo animés pour macOS : une playlist qui tourne derrière les icônes du bureau, sur un écran, sur tous, ou avec une vidéo différente sur chacun.

Défi
Les fonds d’écran de macOS sont statiques, et les applications de fonds d’écran animés vident la batterie ou affichent le même clip sur tous les écrans.
Solution
- Lecture : une playlist qui tourne selon une minuterie avec des transitions fluides ; un écran, tous les écrans synchronisés ou une vidéo différente sur chacun, avec possibilité d’épingler une vidéo à un écran. Les écrans identiques sont distingués, et une même vidéo sur plusieurs écrans partage un seul décodeur.
- Énergie : pause quand le bureau est masqué par des fenêtres en plein écran ou agrandies, sur batterie et en mode économie d’énergie.
- Réglages : onglets Lecture, Écrans, Énergie et Système ; badges de format (21:9, 32:9, 4K…) indiquant si la vidéo s’affiche nativement ou sera recadrée ; cinq thèmes de fenêtre.
- Collection : 12 vidéos sans raccord générées par notre propre générateur — aucune vidéo de banque d’images.
- Économiseur d’écran : LiveWall sur l’écran de verrouillage (prototype).
- Pro : un achat unique StoreKit 2 en plus d’une version gratuite.
- Distribution : fiche App Store et captures d’écran en 15 langues, build universel signé et notarisé, installateur .pkg, deux variantes (directe et sandboxée) à partir d’une seule base de code, lancement à l’ouverture de session uniquement avec l’accord de l’utilisateur.
- Site web : livewall.mainlane.io en 15 langues avec pages de support et de confidentialité, formulaires de liste d’attente et de contact protégés par Turnstile, version et prix récupérés depuis l’API Mainlane.
- Ingénierie : CI sur un runner Mac auto-hébergé, Dependabot, une revue de code par IA sur chaque pull request.
Résultat
Le décodeur partagé a fait passer l’utilisation CPU d’une vidéo 5120×1440 de 213 % à 143 % et la mémoire de 657 Mo à 468 Mo (M1 Max). La version 1.2.0 avec Pro est en cours d’examen sur l’App Store. Pas de réseau, pas de comptes, pas d’analytics.