Snap4City: FIWARE powered smart app builder for sentient cities

Apr 29, 2021Impact Stories

Challenge & Context

Cities are rapidly transforming their services in order to address current societal, environmental and economic challenges. Vertical smart solutions are being progressively replaced by solutions capable of exploiting a huge range of data channels. Today, still, each city/area has its own criteria requiring a highly tailored solution, so only a flexible and dynamic platform can put a city in full control of its operational objectives. Cities are abandoning an approach based on data sources and becoming aware of actual data channels where information and actions flow in multiple directions. Multi-directional flows are key in implementing city operating systems involving daily tuning to deal with current challenges. Cities are becoming smarter also due to regulatory pushes from international bodies and organizations such as the European Commission.

Snap4City is a 100% open-source platform developed under the coordination of Distributed Systems and Internet Technologies (DISIT Lab) of the University of Florence, Italy. The platform has at present a wide range of activities in the smart city and IoT/IoE (Internet of Things/Internet of Everything) integrated domains: defining city strategies, control room, and computing key performance indicators which are used daily in both city and industry management.

Since 2018, Snap4City has incorporated Km4City, providing a number of real-time open-source solutions to support decision makers in cities and large industries to ground their daily operational actions on solid predictions, deductions and assessments. It provides a complete understanding of the context and its trends, receiving early warning, anomaly detections, and performing simulation and what-if analysis. This information is used to suggest strategic interventions to improve city services and general quality of life, in multiple domains (e.g Smart Cities and Smart Industry).


In 2019, DISIT Lab turned out to be the winner of the Select4Cities PCP of EC and one year later won the ENEL-X open data challenge in 2020. Currently, Snap4City is one of the platforms of the EOSC (European Open Science Cloud), and DISIT (University of Florence) is proud to be a Gold Member of FIWARE and an official Powered by FIWARE Solution.

Snap4City platform is managing data, with on-cloud and/or on-premise solutions, of currently more than 40 cities/areas in countries like Italy, Spain, France, Bosnia-Herzegovina, Finland, Belgium, Greece, Croatia, Israel, Sweden.

Snap4City covers:

  • Mobility and transport (smart parking, traffic flow reconstruction, traffic flow prediction, offer vs demand of transportation analysis, vehicle tracking, routing, multimodal routing, smart biking, reducing traffic congestion, etc.). For example in the REPLICATE H2020 project for Florence, and in the cities of Pisa, Livorno, Modena, Santiago de Compostela, on TRAFAIR CEFPisa and Siena for smart biking with Sii-Mobility national smart city actions;
  • Energy (smart light, control room on energy production and recovering, charging stations); For example in REPLICATE for recharging stations, for CAPELON partner in Sweden for Smart Light;
  • Environment (monitoring, pollutant predictions, decarbonization, NOx prediction, NO2 KPI predictions, alerting, CO2 reduction, smart waste, ..). For example, in Florence, Pisa, Livorno for NOX/NO2 predictions, and general pollutant monitoring;
  • Industry 4.0, depuration plant, production plants (monitoring industry plant, control and optimization, digital twin), such as on ALTAIR chemical plant;
  • Governance control and KPI (people flow, tourism, POI, utilities, quality of life assessment and control, building automation, digital twin, sustainability, smart decision support). For example: in REPLICATE H2020 for Smart City Control Room of Florence, in Antwerp for monitoring people flows with PAXCounters, and in DubrovnikValencia for monitoring people flow and tourism aspects with HeritData.

In this large range of solutions, Snap4City is compliant with more than 100 protocols and it is interoperable with GIS (Geographical Information Systems), CKAN and IoT Networks protocols (IOT protocols).

Figure 1 . Snap4City System Overview

Figure 1 . Snap4City System Overview

The goal is to support cities and businesses to improve performance and reduce costs by connecting all management and control domains. To this end, Snap4City platform can rely on FIWARE Compliance and exploits FIWARE Context Broker with its NGSI-V1 and V2 protocols, supporting protected communications and multiple broker connections. The interoperability of FIWARE plus the flexibility and modularity of Snap4City together enable the creation of applications in a wide range of scenarios such as those mentioned above. Snap4City enables the creation of federations of Smart Cities via its Smart City API and NGSI-based solutions. All Snap4City APIs are accessible and well documented for developers, allowing customization. Thanks to FIWARE’s approach, the operating multi-tenant FIWARE Context Broker can feed data into Snap4City platform. To further support developers, Snap4City is supporting the concepts of living lab development and environment.

The Snap4City solution passed the PENtest and vulnerability test and has been proven to be GDPR compliant. With Snap4City, it is possible to create end-2-end event-driven secure applications with connections from devices to dashboards, including data processing, storage and data analytics. Details of the architecture have been published in peer reviewed top journals having IEEE Access. The solution is distributed entirely open source including the application layer, multitenancy aspects, assessment and auditing, resource management, etc.

The Snap4City solution can be installed on private and public clouds starting from an open source virtual machine, as well as from docker compose — all elements being licence free. It provides a number of configurations from small standalone to very large installations.

How it works

As described above, the Snap4City solution is capable of working with multiple data channels of any kind, as well as multiple FIWARE solutions. Once data channels are established, city entities are modeled in a Knowledge Base (grounded on Km4City ontology and LD linked data) and become ready for semantic queries exploiting relationships as: spatial, temporal and relational. Multiple brokers, devices and edge devices can be connected and managed via the IoT Directory. Remote IoT Edge Devices can be maintained, also updating the logic of control and data processing based on Node-RED. Snap4City can manage open and private data for each domain and organization.

The Snap4City Dashboard Builder provides a huge amount of graphic rendering tools to show and play with a variety of complex data (e.g. maps, Orthomaps, tables, trends, heatmaps, traffic flows, typical trends, calendar, Kiviat, barseries, custom widgets, animations, scenarios, routing, buttons, 3D, synoptics, etc.). They are composed by means of the Wizard in a very simple and easy manner to create vertical solutions, along with complex applications with multiple dashboards and tools, up to complex control rooms as it has been installed e.g. in Florence for Smart City and in ALTAIR for Industry Plant. They realize event-driven solutions working in real time and provide interactive web tools and mobile Apps, for operators and final users. The Snap4City Dashboard Builder provides a large number of interactive features, joining 3D representation, Digital Twin representation and navigation, integration with workflow management systems for ticketing and management, synoptics for industrial monitoring and animations, etc., supporting protection and GDPR.

Figure 2 . Snap4City Dashboards and Apps

Figure 2 . Snap4City Dashboards and Apps

Snap4City is fully integrated with data processing tools such as Node-RED of JS Foundation in which the open Snap4City Library is providing a large set of MicroServices for creating data adapters, integration, business logic and data transformations. They can be easily used to compute any kind of indicators and follow the KPIs needed by cities such as the EC indicator on pollutants (ISO37120, 37122); city indexes and so on.

In addition, Snap4City fully supports the development of real time data analytic processes through machine learning, artificial intelligence and statistical languages such as Python, Java, R-Studio, also exploiting Tensor Flow, Keras, and any kind of library for data analysis, learning and deep learning. Snap4City is also developing and distributing a number of Open Source data analytics tools and algorithms for prediction, anomaly detection, heatmap production, and many others have been published on international top level journals for Smart Parking, Smart Biking, traffic flow reconstruction, traffic flow prediction, NOX prediction, NO2 prediction, people flow analysis, public transportation analysis, routing, etc. Data Analytics can be fully integrated into What-IF analysis tools in control rooms and for operators.

Benefits & Impact

The usage of Snap4City has brought about improvements and has been of great benefit to a wide range of situations where it has been implemented. The very low costs for the implementation of changes, to be done directly by city operators, has impressed many users. Snap4City can be freely installed on premise with its full solution components. Its impact has been demonstrated in a wide range of solutions, pilots, projects and trials, including:

  • Mobility and transport: reducing people congestion, traffic congestion, monitoring and controlling traffic flow, simulating and analysing mobility and transport, smart parking;
  • Environment: predicting NOX and long term NO2, monitoring pollutants of any kind and alerting, informing city users;
  • Energy: recharging stations monitoring, smart light control;
  • Strategic planning: performing what-if analysis with respect to critical conditions, planning production, system thinking on smart decision support systems;
  • City management: predicting maintenance interventions, multichannel alerting, anomaly detection as early warning, etc.;
  • People flow: monitoring and alerting on critical cases.

The possibility of establishing bi-directional connections with data channels in the above-mentioned domain, enabled higher levels of integration and exploitation, thus allowing the generation of unexpected hints and deduction, thanks to the support of the tools for data analysis and what-if analysis.

Added value through FIWARE

FIWARE was adopted by Snap4City in 2016 as reported in the roadmap, making it an official Powered by FIWARE Solution. Thanks to FIWARE’s openness, interoperability and spread, it has enabled a faster integration and exploitation of the IoT aspects in the Smart City model of Km4City. The first usage of FIWARE technology by Snap4City was in the fields of Smart Industry and Smart Cities. Its capability and compliance at European level allowed them to perform a huge number of integrations. NGSI has been adopted by Snap4City as the core part of the ingestion process using FIWARE’s IOT Orion Broker. Recently, Snap4City utilized FIWARE’s Context Broker for extending the Snap4City federation of Smart Cities, and have started working on the NGSI-LD integration which is adding to the Km4City, an additional semantic level with additional capabilities. In the above listed projects and solutions, FIWARE has been used by DISIT Lab as a core part of the Snap4City solution, and in particular in the cities of Florence, Antwerp, Pisa, Livorno, Modena, Santiago de Compostela, Valencia, Dubrovnik, Lonato del Garda (for Smart Parking), and in the projects mentioned before: REPLICATE H2020, RESOLUTE H2020, TRAFAIR CEF, Sii-Mobility, SODA of ALTAIR, 5G MIUR, MOBIMART, HERITDATA, and PC4City.

Authors & Contributors

Image Placeholder 16x9

Paolo Nesi


Nicola Mitolo


Smart CitiesSmart IndustrySmart LightingSmart MobilitySmart Parking

Related articles