GreenFrame - Mesurer et réduire les émissions CO2 de vos applications web
Développeur fullstack chez Marmelab, j'ai conçu et développé GreenFrame de zéro - une application SaaS qui mesure l'empreinte carbone des applications web en temps réel via l'intégration continue.

Dashboard des analyses - Vue d'ensemble des mesures d'empreinte carbone avec historique et tendances

Configuration des scénarios utilisateur - Basé sur Playwright pour simuler des parcours réels

CLI GreenFrame intégré en CI/CD - Mesure automatique à chaque déploiement

Analyse détaillée avec métriques CPU, RAM, Réseau - Conversion en mWh et grammes de CO2
Les points clés
- ▸ Créé un système de mesure d'empreinte carbone basé sur des publications scientifiques, convertissant CPU/RAM/Réseau en CO2
- ▸ Développé un CLI intégrable en CI/CD utilisant Docker et Playwright pour des mesures automatisées à chaque déploiement
- ▸ Conçu et développé l'architecture complète de l'application (NextJS, NodeJS, Docker)
- ▸ Implémenté le monitoring multi-conteneurs permettant de mesurer l'impact global de tous les composants d'une application (API, DB, Messaging...)
Le contexte
La part du numérique représente 4% des émissions mondiales de gaz à effet de serre, avec une croissance de 9% par an (The Shift Project). Les développeurs doivent construire des applications plus durables, mais le Green IT manque d’outils de mesure précis des émissions CO2.
GreenFrame est né pour répondre à ce besoin : offrir aux développeurs un outil concret pour mesurer et réduire l’impact écologique de leurs applications.
Architecture technique et innovation
Mesure par conteneurisation Docker
GreenFrame utilise Docker comme “boîte noire” pour isoler les processus du navigateur. L’API Docker Engine permet de collecter précisément les métriques (CPU, RAM, Réseau, I/O disque) du conteneur pendant l’exécution des scénarios.
Ces métriques sont converties en mWh puis en grammes de CO2 grâce à un modèle développé en interne basé sur des publications scientifiques validées.
CLI et intégration continue
Les utilisateurs exécutent dans leur CI un scénario basé sur Playwright qui simule de vraies actions utilisateur. Le CLI GreenFrame orchestre l’exécution, collecte les données et les envoie à l’API pour génération du rapport.
Cette approche permet d’intégrer la mesure d’impact dans le workflow de développement, détectant les régressions écologiques comme on détecte les régressions fonctionnelles.
Monitoring multi-conteneurs
Au-delà du navigateur, GreenFrame peut monitorer simultanément d’autres conteneurs (API, base de données, Redis) pour mesurer l’empreinte globale de l’application pendant les tests.
Design et infrastructure
Sans équipe design ou devops dédiée, nous avons conçu l’interface en NextJS et l’infrastructure AWS avec Terraform. L’application applique les principes d’éco-conception qu’elle promeut : légère, sobre en ressources, et monitorée par elle-même dans sa propre CI.
Un projet challengeant
Ce projet très jeune avec un budget limité nécessitait d’implémenter rapidement des fonctionnalités complexes sans compromettre la stabilité ou la qualité. Un vrai défi d’innovation technique au service de l’impact environnemental.