Eco-design at MobileThinking

Languages and Frameworks

12.08.2025

Fourth challenge : reducing impact by establishing the best framework

What if choosing a different language or framework could make all the difference?

That's what Jules and Jérôme wanted to find out, so they decided to take a look under the hood, where technical choices (really) influence consumption.

Their plan : compare the most popular languages and frameworks here (and around the world) to see which ones use the least energy... and rethink our tech choices based on their environmental impact.

Just like when choosing a fridge or washing machine : for the same use, some use way more energy than others. So why not apply the same thinking to our code?  

Initial findings 🔎

As a company specialised in web development, we use several languages and frameworks depending on the project.
 
We often choose them based on performance, productivity or preference.
 
But we never really asked ourselves which one was the most energy-consuming. And yet, there is a good chance that some are much more energy-intensive than others. 

So the question came up : what if we incorporated this criterion into our technical choices? Should we, in the future, prioritise one framework over another if it has a lower environmental impact?

In order to get a clearer picture, our power duo decided to test and compare the actual consumption of some of the most popular frameworks.

Issues identified 🤔

As the morning progressed, several specific questions emerged :
  • Are the most popular frameworks also the most eco-friendly?
  • Can we really measure the energy impact of a complex API call, with a database, business logic, and serialisation?
  • And on the frontend side : to what point are the results influenced by the computer, operating system, or even the browser used?
In other terms, measuring is good... but comparing on a level playing field is a real challenge.

What we tested 🧪

To objectively measure consumption variations, Jules and Jérôme set up a simple test protocol that accurately reflects real-life usage.

👉 On the backend, they simulated a classic GET request in our APIs :
  • Passage through authentication middleware
  • Database query
  • Data serialisation (user profile + list of associated books)
All measured with Scaphandre, an open-source tool for estimating energy consumption in microjoules (µJ). → Each framework was tested on 200 requests, under the same conditions.

👉 On the frontend side, they compared the most widely used frameworks (Vue.js 3, React, Angular) based on annual consumption estimates, while taking into account hardware limitations (OS, browser, machine, etc.)

Results 📊

Backend

➡️ The result is clear : the same process can consume 28 times more energy depending on the framework used.

Frontend

➡️ Here too, the differences are significant : Vue.js is the most sober of the three, Angular the most energy-intensive.

Areas for improvement

This challenge has identified several key opportunities for the future :
  • Reduce the impact of JSON serialisation, which is often underestimated but energy-intensive.
  • Document the results and build an internal comparison database.
  • Include energy consumption in our technical selection criteria, alongside maintainability and development speed.
  • Create a standardised testing protocol to enable easy benchmarking for each new project.

What we'll keep in mind

  • Not all frameworks are created equal : some consume much more than others for the same result.
  • These differences have a concrete impact, project after project, query after query.
  • The frontend remains difficult to compare objectively, but clear trends are emerging (Vue.js is more efficient than React or Angular).
  • With tools like Scaphandre, it is possible to measure, compare, and make conscious decisions.

To be continued… ✨

The challenges came thick and fast : lightening the images, better distributing processing, reviewing our architecture, and finally... choosing the most efficient technologies.

Each team contributed to the effort, everyone was able to test, tinker and be amazed. And what we thought would be simple technical adjustments... turned into a collective awakening.

Now that we have the cards in our hands, one question remains : what do we do with them?

👉 The answer in the next and final episode : from collective reflection... to a new way of thinking.