Simone Giannecchini, founder and director of GeoSolutions. While his current field of expertise is GIS software, he actually fell into the industry on a whim. His background is business product management platforms, specifically for finance and insurance companies. He made the jump into GIS by starting a 6 month role with a data center, which turned into 3 years, and eventually a new career with GeoSolutions Inc which is one of the main contributors to MapStore.
What is MapStore?
MapStore is a front-end, open-source, client-side web GIS application. It can be described as both a product, and a framework. As a product, it can be used out of the box to perform analysis, and create visualizations, geoportals, dashboards, GeoStories, and web applications sourcing data from your preferred geospatial server. Another excellent feature you can add to your MapStore application are its widgets. These include Text, Table, Counter, and Chart widgets.
As a framework, MapStore can be molded via custom expansion to fit your use case. In pursuit of this customization, you can access a variety of content from Google Maps, Bing, OpenStreetMap, or from another server which adheres to OGC standards. While MapStore will likely serve your purposes via most backend options on the market, such as QGIS Server, or MapServer, you will get the best results when paired with GeoServer, GeoSolutions’s open source GIS server product.
In the beginning, MapStore was based on a GPL/GNU (General Public Use License). This option created issues for some users, however, as GPL code can only be linked to specifically compatible software. MapStore 2 reacted (still just called MapStore in conversation) by shifting to a modified BSD license, which provides far more flexibility for interoperability and integration.
MapStore can take OGC services as back end inputs. Some of the offerings are WFS, WMS, WMTS, CSW, WMC, TMS, and GeoJSON.
One of MapStore’s most exciting offerings are its easy to configure dashboards. Dashboards allow users to combine widgets in order to communicate a situation through snapshots of underlying data. Furthermore, these widgets’ values can be interconnected in order to add depth to the information being displayed. The chart widgets are especially useful for visualizing a range of data and presenting to stakeholders in a simple and easily digestible form. Dashboards are best used to keep track of developments in a scenario, rather than acting as a formal report, which still largely falls into the realm of statistics, and graphic design.
Another cool visualization option available through MapStore are its GeoStories. Similar to ArcGIS StoryMaps, these allow users to tell a story with their geospatial data, and to accompany it with over media formats. For example, you can integrate images, documents, or videos, including from Vimeo or YouTube to your story to increase their impact. Originally, the GeoStory feature was built on StoryMap JS, another open source option. The GeoSolutions team took into consideration how important stories are, and decided to take on building their own version, leading to the current iteration of the feature.
Styling has always been a bit of a pain point for data interoperability. Each service holds just enough variation in its formatting, that it can be quite resource consuming to support all of them. For this reason, MapStore is only able to import styling from GeoServer, which uses a unique CSS extension “GeoCSS”. Despite this, you still have an impressive range of styling options within the MapStore GUI itself to modify these properties on the front end (except for WMTS layers).
MapStore’s Integrations and Functionalities
MapStore recognizes the importance of proper enterprise administration, and integrates supporting tools and functionalities to make this easier. In order to begin to take advantage of these, it is first important to review the three user types available.
Anonymous User – This user type is essentially “View Only”. They can navigate, search for, and share resources
Normal User – This user has all the capabilities of an anonymous user, but can also create resources, and set permissions for their use
Admin User – This user has all the capabilities above, as well as the ability to manage other users and groups, and toggle what is available in the “Featured” section
Users can be put into Groups, which allows fine-tuned administration of certain resources, and promotes ease of use for resource sharing only to those who need them.
In terms of editing, MapStore supports transactional databases so that it is possible to perform some back door editing on participating features. In addition to modification, you can configure and administer resources to be available, or not available, to the public. It is possible to require authentication, such as SSO for access to certain resources. This is a valuable tool for quality assurance. It is possible to run multiple environments off a single MapStore installation. This promotes ease of use for developers, allowing staging and pre production environments to be established for clean and quality product development. Keep in mind that best practice is to have dedicated machines for server based development and administration, so if you have your sights set on a large enterprise deployment, you will still want to have a few machines on hand to help spread the load for backend GeoServer work, and front-end development.
What’s in Store for MapStore?
First and foremost, MapStore is geared towards consumption. People often prefer to expand their own portals, rather than translating their existing system into a proprietary format. While MapStore acknowledges this, and strives to promote interoperability for its products, it is strictly a front-end application. If you are looking for backend infrastructure, you will need GeoServer. If you need a resource for public data collection, take a look at GeoNode, and keep an eye out for a Mapscaping episode on it in the future!
Stacking together the GeoSolutions suite is a functional open source solution for a variety of geospatial deployments, and it is constantly improving.
In the future, we can expect to see enhanced capabilities and functionalities for dashboards, and widgets. This will greatly expand the out of the box customizations available in MapStore.
MapStore intends to continue to expand its supported technologies by responding to market needs. Currently, this means expanding to support 3D tile visualizations. LiDAR and point cloud data has taken the world by storm, with many organizations and municipalities around the world having stockpiles of data that have gone unused. This data has the potential to solve a wide variety of problems, it just needs to be plugged into the proper infrastructure in order to do so. MapStore aims to provide an open source solution for these use cases in the future. You can stay connected with this endeavour by visiting the resources provided here, or by visiting their website.