Goverlay, une application de terminal codée en Golang à destination des photographes

Thomas Lochet

Thomas Lochet / January 23, 2023

2 min read

Après avoir été solicité par un collègue de mon alternance à Ree Bee Media, j'ai décidé de développer Goverlay.

La demande était de pouvoir ajouter un logo sur plusieurs images ou vidéos à la fois sans que la tâche ne soit rébarbative. Une bonne excuse pour apprendre le language Go, je me suis lancé.

J'ai alors pensé à créer cette application sous forme d'application en ligne de commande. Pour cela, la librairie Cobra est idéale.

Une seule commande, rien de plus simple.

Goverlay execute des commandes Ffmpeg. Trois dossiers sont créés, "to-convert", "logo" et "converted". On dépose le logo aux mêmes dimmensions que les images déposées dans le dossier "to-convert".

On récupère le résultat dans le dossier "converted" sans aucune perte de qualité.

L'application est multiplateforme (windows, linux, macos) et compatible avec les architectures amd64 et arm64.

Au demarrage, Goverlay vérifie si une mise à jour est disponible. Pour cela, Goverlay intérroge un repo GitHub et recherche un nouveau tag de version. Si présent, la nouvelle du version du binaire sera téléchargée et utilisée à la prochaine commande.

Voici le fonctionnement détaillé :

  1. Check update from GitHub
  2. Identify the platform with the go runtime
  3. Download the latest binary of Ffmpeg
  4. Create folders if not present
  5. Chmod folders
  6. Execute Ffmpeg command for all files in folder