Key metrics
- 99%+Achieved minute-scale detection of air quality anomalies with over 99% accuracy
- ~1 km²Each IoT sensor covers ~1 km², ensuring broad coverage with no blind spots even in areas without network infrastructure
About the Client
ForrestApp is an early-stage climate technology startup specializing in air quality and emissions monitoring. Their flagship product (the ForrestApp system) helps enterprises like utilities, mines, landfills, and oil & gas operations monitor greenhouse gas emissions and air pollutants in real time.
Their "digital nose" sensors combine gas detection with AI to pinpoint where an emission is coming from. Deployed as a network, they're meant to catch leaks and pollution events early enough to do something about them.
We built the entire software side from scratch, from the IoT backbone to the apps.
The Challenge

Monitoring air quality over vast and remote areas is extremely challenging with traditional methods. The client faced the need to detect gas leaks, pollution, or wildfire smoke quickly and precisely across locations like forests and industrial sites.
Existing solutions (fixed stations or manual inspections) were either too slow, lacked coverage, or provided insufficient data analysis. They wanted a system that could identify anomalies in real time and localize the emission source to within a small area, enabling rapid response before minor issues became major disasters.

ForrestApp needed to deploy sensors in remote regions (e.g. large ranches, vineyards, mountain forests) often without reliable internet or power. This meant the solution must work in offline conditions and still gather data continuously.
- Connectivity Gaps
Many target sites have limited cellular coverage. The system had to transmit data via alternative means (e.g. satellite communication) to ensure no data loss. Likewise, field personnel required offline access to maps and sensor data when working on-site.
- Real-Time Alerts
Detecting an emission event (such as a methane leak or fire) even a few hours late could lead to regulatory fines or safety hazards. The client required instant alerts and up-to-the-minute status updates from every device.
- Scalability & Coverage
To cover large geographic areas, multiple sensors would be deployed (each sensor can monitor ~1 square kilometer). The platform needed to manage dozens or hundreds of devices and aggregate their data into one dashboard.
- Accuracy & Reliability
False alarms or missed detections had to be minimized. The solution's analytics had to be robust and AI-driven to ensure high precision in identifying true emission events, as the client promised >99% detection accuracy to their end-users. Additionally, devices needed to be low-maintenance (battery-powered with long life) and the software architecture had to be fault-tolerant given the critical nature of the data.
The Solution
Our development team engineered a full-stack IoT platform that met ForrestApp's challenges by combining a cross-platform app, IoT connectivity, and cloud infrastructure.
We chose Flutter for the client application to deliver a uniform experience on Android, iOS, and web from a single codebase. On the backend, we integrated the ResIOT IoT platform and AWS cloud services to handle device communication, data processing, and scaling.
The solution was designed with an offline-first mindset and real-time capabilities from day one.

Flutter · ResIOT IoT Platform · AWS (Cloud & IoT Services) · Satellite & LoRaWAN communication · Map APIs (with offline tiles) · MQTT/WebSockets for live updates

- Implementation detailsPhase 1. Initial assessment & Design
- In this phase, we worked closely with the client to gather requirements and understand the environmental monitoring workflow. We defined the system architecture, choosing Flutter for the app and identifying ResIOT as a suitable IoT platform for device management and communication. The team planned for key features like offline operation, real-time alerts, and integration with the client's AI anomaly detection model. We created wireframes for the user interface (dashboard and mobile screens) and designed the database schema on AWS to store sensor data and event logs.
- Implementation detailsPhase 2. Development & Integration
- Our engineers developed the Flutter application and the cloud backend in tandem. On the frontend, we implemented an intuitive UI with dashboards, maps, and device controls, ensuring a smooth UX on both mobile and desktop. We integrated map functionality with offline caching so users could download maps of their sites. Meanwhile, the IoT integration team configured the ResIOT platform to register ForrestApp sensors and set up data connectors. We wrote backend services on AWS (using AWS Lambda and API Gateway) to interface with ResIOT's MQTT data stream, processing incoming sensor data in real time. During this phase, we also embedded the client's AI logic: sensor data would be fed into an anomaly detection algorithm (either at edge devices or in the cloud) to decide if an emission event is occurring. The development was iterative, with weekly demos to the client, allowing us to incorporate feedback on features like alert thresholds and reporting analytics.
- Implementation detailsPhase 3. Testing, Deployment & Launch
- We conducted extensive testing of the complete system. This included simulation of sensor data to test real-time alerting, offline scenario tests (running the app with no internet to ensure data persistence), and field tests with actual hardware devices. We fine-tuned the satellite communication workflows to handle intermittent connectivity gracefully (e.g., buffering sensor readings if a satellite pass was delayed). Once validated, we deployed the cloud components to the client's AWS environment and published the Flutter app to the App Store/Play Store for controlled release. In its first field deployment, the system detected a test gas release in under two minutes.
Results and Impact
Tech Stack
- Backend
IoT ingestion and messaging via ResIOT and AWS IoT (MQTT, WebSockets)
Serverless data processing and alert pipelines for real time alerts
Analytics layer integrating the client's anomaly detection models
API layer for apps and dashboards (data queries, control commands)
- Frontend
Flutter single codebase for iOS, Android, and Web
Offline first data cache and background sync for field use
Interactive maps with offline tiles based on OpenStreetMap
Live dashboards with device status, charts, and map overlays
- Infrastructure
AWS cloud for scalable compute, data storage, and monitoring
ResIOT device registry and LoRaWAN network integration
Satellite uplink and LoRaWAN backhaul for remote deployments
Automated build and rollout for mobile and web releases
- Security
End to end TLS for MQTT, WebSockets, and APIs
Role based access control for users and devices
Encryption at rest and in transit with audit logging and least privilege
Secure OTA updates and signed configuration distribution

Environmental monitoring was reactive and fragmented. The client's customers relied on a patchwork of local sensors, periodic manual inspections, and after-the-fact reporting. Coverage was limited, and detecting an emission source could take hours or even days.

ForrestApp provides a proactive, unified monitoring system. Automated IoT sensors continuously sniff out issues, and the moment an anomaly arises, an alert with the exact location is sent out. What once was a slow, manual process is now an instantaneous, data-driven operation. For instance, a landfill operator using ForrestApp can locate a gas leak immediately on the digital map, instead of searching acres of land – drastically reducing response time and improving safety.
Key Takeaways
Pairing sensor networks with AI anomaly detection moved leak and pollution detection from hours to minutes, at a scale where manual inspection was never realistic. For the industries involved, that's the difference between an incident log and a fine.
Offline-first was the right call. Satellite backhaul and local caching keep the system working in places with no connectivity at all, which is exactly where the sensors are needed most.
One Flutter codebase covered iOS, Android, and web, which mattered on a startup budget. The identical UI across platforms also made user training simpler.
The AWS and ResIOT foundation absorbs growth in sensors and regions without rework. Long battery life and over-the-air updates keep the operating cost low enough for a startup to actually run the fleet long-term.
Weekly demos and iterative testing with the startup's team tuned alert thresholds and dashboard features against real expectations. For a novel product, that feedback loop was the difference between shipping their idea and shipping ours.
Need a similar solution?
If you're putting sensors in the field and need the software side to be as reliable as the hardware, talk to us. We'll design the whole pipeline, from device to dashboard.
Contact us