25 points par GN⁺ 2025-04-13 | 3 commentaires | Partager sur WhatsApp
  • VERT est un outil local de conversion de fichiers basé sur WebAssembly qui convertit directement les fichiers dans le navigateur, sans cloud
  • Pour renforcer la protection de la vie privée, les fichiers sont traités sur l’appareil de l’utilisateur, et pour les fichiers vidéo, une conversion côté serveur est également possible en option
  • Développé avec Svelte et TypeScript, il offre une interface rapide et intuitive
  • Il n’y a pas de limite de taille de fichier et de nombreux formats sont pris en charge
  • Il propose un environnement de déploiement simple avec Docker et Bun

VERT: outil de conversion de fichiers basé sur WebAssembly

VERT est un outil qui utilise la technologie WebAssembly pour convertir des fichiers directement dans le navigateur de l’utilisateur. Comme la conversion se fait sans envoi vers le cloud, il offre à la fois une meilleure protection de la vie privée et des temps de traitement rapides. Une démo officielle est disponible sur vert.sh.

Fonctionnalités principales

  • Conversion locale de fichiers à l’aide de WebAssembly
  • Aucune limite de taille de fichier
  • Prise en charge de nombreux formats de fichiers
  • Interface utilisateur intuitive basée sur Svelte
  • Fonctionne localement par défaut, mais pour les fichiers vidéo, une conversion serveur est aussi possible, et l’auto-hébergement permet un traitement entièrement local

Démarrer le projet

Prérequis

  • Installation du runtime Bun requise

Installation

  • Cloner le dépôt Git puis installer les dépendances avec la commande bun i

Lancer le serveur local

Build de production

  • Après avoir créé le fichier .env, générer le site statique avec la commande bun run build
  • Le résultat du build est généré dans le dossier build et peut être servi via un serveur web tel que nginx
  • Un exemple de fichier nginx.conf est fourni
  • Il faut conserver la configuration de cross-origin isolation

Utilisation avec Docker

  • Après avoir cloné le dépôt, construire l’image Docker :
    • docker build -t VERT-sh/vert ...
  • Lancer le conteneur Docker :
    • docker run --restart unless-stopped -p 3000:3000 -d --name "vert" VERT-sh/vert
  • Ou utiliser le fichier docker-compose.yml :
    • gestion avec docker compose up et docker compose down
    • possibilité de reconstruire l’image avec l’option --build
    • possibilité d’exécuter en arrière-plan avec l’option -d

Licence

  • Distribué en open source sous licence AGPL-3.0

3 commentaires

 
laeyoung 2025-05-12

Ça a l’air bien.

 
lifelectronics 2025-04-13

C’est la première fois que je laisse un commentaire. J’attends avec impatience les prochaines actualités qui seront publiées.

Le fait que cela fonctionne on-device/en local est impressionnant, et l’interface est agréable car intuitive. Je vais l’essayer un peu.

 
GN⁺ 2025-04-13
Commentaires sur Hacker News
  • ffmpeg est un excellent logiciel indispensable sur Internet
  • Il existe cet adage : « si vous ne payez pas pour le produit, c’est vous le produit »
    • Il semble étrange d’héberger gratuitement la partie conversion vidéo du serveur en utilisant des cartes graphiques, etc.
    • S’il n’y a pas d’autre moyen de collecter des données qu’avec Plausible, cela risque d’être difficile à soutenir sur le long terme
    • Je me demande s’il y a un autre élément qui pourrait expliquer cette situation
  • Des cas récents ont montré que des sites de « conversion de fichiers gratuite » injectaient des malwares
    • Je voulais mettre en place quelque chose comme ça sur un serveur pour ma famille
    • Ce projet correspond exactement à ce que je cherchais
  • Le code source est ouvert et utilisable
    • La licence AGPL est adaptée à ce produit
    • L’AGPL inclut une clause d’usage réseau, qui impose de publier le code source lorsqu’on utilise le logiciel via un réseau
    • Il faut aussi partager le code source lorsqu’on utilise un produit SaaS
  • Le projet est excellent et utile, mais les informations d’analyse avec participation automatique devraient figurer sur la page principale
    • Utiliser Plausible est une bonne chose, mais le cacher en bas de l’écran de configuration nuit à la confiance
    • On peut auditer le code source, mais ce n’est pas le fond du problème
    • J’espère que ce commentaire sera pris comme une suggestion / un retour
  • Ce projet utilise les éléments suivants
    • libvips (wasm) : conversion d’images
    • ffmpeg (wasm) : conversion audio
    • ffmpeg (remote, via vertd) : conversion vidéo, avec une option permettant à l’hôte d’utiliser ffmpeg wasm
    • D’après GitHub, les formats manquants sont généralement dus à la difficulté de lier des bibliothèques à wasm libvps/ffmpeg
  • C’est une excellente interface pour ffmpeg
    • J’aimerais que cela soit mentionné sur la landing page
  • Vert est-il une version simplifiée de <a href="https://ffmpeg-web.netlify.app/" rel="nofollow">https://ffmpeg-web.netlify.app/</a>; ?
  • Je vais ajouter ce projet à mes favoris
    • Tant que la conversion vidéo exige un téléversement vers le serveur de traitement, il peut être préférable d’appeler ffmpeg directement
    • Le temps de téléversement et de téléchargement des gros fichiers peut poser problème
    • Si la conversion vidéo pouvait s’exécuter entièrement en WASM, ce problème pourrait être minimisé
  • Un autre projet : ConvertX