Mugo Climate
Ecosystem of portals for corporate carbon footprint calculation and carbon offset credit purchasing, deployed on AWS.
Challenge
Build a platform for corporate carbon footprint calculation and carbon offset credit purchasing, with an accurate calculation system based on sector and activity-specific footprint data.
Solution
Development of a Laravel portal ecosystem on AWS, using Redis for caching and SQS for asynchronous processing of calculation jobs. Built a carbon footprint calculation engine based on custom footprint tables, integrated with a carbon offset credit purchasing system.
A calculation engine, not a questionnaire
The core of the platform is the carbon footprint calculation engine, built on custom footprint tables specific to sector and activity. That is the difference between an indicative figure and a defensible one: the same consumption yields different values depending on the sector a company operates in and how the activity is carried out.
This translates into a precise requirement on the data: footprint tables must be updatable without rewriting the calculation logic, because coefficients change over time while the method stays.
Why the calculation is asynchronous
Calculation jobs are processed asynchronously through SQS. Processing that crosses many consumption entries and many conversion tables is not an operation to run inside the lifecycle of an HTTP request: keeping it there exposes users to timeouts and ties system capacity to the number of concurrent requests.
Moving it onto a queue achieves two things: the user gets immediate confirmation and the result when it is ready, and the system absorbs a spike of calculations by queueing them rather than refusing them. Redis sits alongside as a cache layer for frequently read data.
From measurement to offsetting
The calculation is integrated with a carbon offset credit purchasing system, and that is where the platform moves from a measurement tool to a transactional one.
The step is not trivial in terms of consistency: a purchased credit has to stay tied to the calculation that motivated it, because that link is what makes the operation accountable. The ecosystem is built with Laravel and deployed on AWS.