This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.
Mobile air testing station
We have created an application that cooperates with the measuring devices, monitoring the set air quality parameters on an ongoing basis. The collected measurements are presented on an interactive map, offering users a clear and comprehensive overview of air conditions in their area. Additionally, mobile devices with access to the GSM network allow you to receive external weather alerts and trigger an alarm in measuring devices.
Key Features and Capabilities
- Real-Time Monitoring:
The application continuously monitors air quality parameters and instantly alerts users when hazardous substances exceed safe levels.
- Interactive Mapping:
Data collected from measuring devices are presented on an interactive map, allowing users to visualize air quality across different locations.
- Seamless Integration:
By leveraging the Swagger tool, our app is integrated with the State Environmental Monitoring API, providing access to nationwide air quality data.
- Comprehensive Data Analysis:
The system tracks key environmental indicators including temperature, humidity, atmospheric pressure, and pollutants like sulfur dioxide (SO2), carbon monoxide (CO), ozone (O3), nitrogen dioxide (NO2), benzene (C6H6), PM2.5, and PM10.
- Customizable Alerts:
Users can configure various sound and light alerts for immediate notifications, ensuring timely responses to potential hazards.
- Device Management:
The app provides an intuitive interface for managing compatible air quality measurement stations, including power management and operational mode adjustments.
The data download
The use of the Swagger tool allowed us to quickly integrate with the API of the State Environmental Monitoring (PMŚ).
Thanks to this, in addition to communication with measuring stations, the application offers access to current measurements performed, among others, using devices operated by the Chief Inspectorate of Environmental Protection. All downloaded data is stored in the Cloud service, which facilitates long-term measurement history. Using the GPS connection of a mobile device allows automatic detection of the nearest measuring station and downloading information on air quality in a given region.
It is also possible to manually select and check data from stations across the country. The application presents the collected measurements in the form of an interactive map. Additionally, mobile devices with access to the GSM network allow you to receive external RCB alerts and trigger an alarm at compatible measuring stations.
Data analyzed
- Temperature
- Humidity
- Atmosferic Pressure
- Sulfur Dioxide SO2
- Carbon monoxide CO
- Ozone O3
- Nitrogen dioxide NO2
- Benzene C6H6
- PM2.5 suspended dust
- PM10 suspended dust
Technological Framework
Our solution is built on a robust technological stack, ensuring performance, scalability, and security:
- Vue.js:
The frontend of the application is developed using Vue.js, a progressive JavaScript framework that enables the creation of a dynamic and responsive user interface. Vue’s component-based architecture allows for reusable components, speeding up development and ensuring consistency across the application.
- Node.js & NestJS:
The backend of the application is powered by Node.js, with NestJS providing a scalable framework for building efficient and reliable server-side applications. This combination ensures fast processing of real-time data and seamless API integrations.
- TypeScript:
To enhance code maintainability and reduce the likelihood of runtime errors, the entire application is developed using TypeScript. TypeScript’s strong typing capabilities help in catching errors early during development, making the codebase more robust.
- Database Integration:
The application uses a cloud-based database to store historical measurement data securely. This setup allows users to access past data, analyze trends, and make informed decisions based on comprehensive records.
- Security:
Security is a critical aspect of our application. We have implemented industry-standard security protocols to protect data transmission and storage. This includes the use of HTTPS for secure communication and encrypted databases to safeguard sensitive information.
- Angular & Ionic Framework:
For the mobile application, we used the Angular framework in conjunction with the Ionic framework. This combination allowed us to develop a cross-platform mobile app that delivers a consistent user experience on both iOS and Android devices. Angular’s powerful features like dependency injection and two-way data binding, along with Ionic’s mobile-optimized components, made it possible to create a performant and user-friendly mobile application.
Testing and Quality Assurance
To ensure the reliability and performance of our application, we employed a rigorous testing strategy using the following tools and frameworks:
GitLab
Continuous Integration/Continuous Deployment (CI/CD) pipelines in GitLab facilitated automated testing, ensuring that every code change was thoroughly vetted before deployment.
Locust
We used Locust for load testing, simulating heavy usage scenarios to ensure the application could handle large volumes of data and user requests without compromising performance.
OpenAPI & REST API Testing
The OpenAPI specification was used to define the API endpoints, and comprehensive testing was performed using tools like REST API to validate the accuracy and reliability of API responses.
PyTest & Jest
Unit and integration tests were conducted using PyTest for Python components and Jest for JavaScript components. These tools ensured that individual modules functioned correctly and that the system as a whole operated as intended.
Cypress
End-to-end testing was performed using Cypress, allowing us to simulate real-world user interactions and validate the overall functionality of the application from the user’s perspective.
Our application allows you to conveniently control the operation of compatible air quality testing stations. One of the basic options is device power management.
You can easily switch operating modes and balance between high measurement frequency and saving electricity and long operation of the station’s batteries. The user can set various sound and light alerts triggered by an event programmed from the mobile device.
We have also added an intuitive panel to control the operation of devices connected to the station’s digital outputs. Ready-made scripts support, among others, popular systems with HEPA filters and activated carbon.