Web Mapping Frameworks Comparison
Find the right solution for your business
There are many options for web mapping technology frameworks in today’s world. The purpose of this site is to showcase what is available, and if any of these solutions can meet your needs.
The Province of British Columbia currently uses four main web mapping frameworks. These frameworks vary from a cloud-based Software as a Service (SaaS) solution, two Government hosted solutions and Do-It-Yourself solutions.
- The SaaS solution is the cloud-based ESRI solution commonly known as AGO or ArcGIS Online.
- Two Government hosted service offerings:
- The Simple Map Kit (SMK) is Open Source and can be deployed anywhere. It is Leaflet.js based and and it can be used to rapidly configure web mapping applications that consume BC Gov-hosted data or uploaded files. The code is also extensible allowing for customization to meet business and end user needs.
- Also listed are currently popular open source libaries that provide flexibility and options for development of simple to complex applications. These specific libaries are not hosted or maintained by anyone BC Government Organization, but they have been used (and contributed to) by various project teams within the BC Government to build awesome and business specific solutions. See their respective websites (linked below) for more information. Examples of the use of these open source libaries, with the BC Government, are listed in the next section below.
Look and Feel
Below are examples of similar functionality in the available solutions.
Complexity | Client | Example | |
---|---|---|---|
AGO | Medium | Emergency Map BC | https://governmentofbc.maps.arcgis.com/apps/webappviewer/index.html?id=950b4eec577a4dc5b298a61adab41c06 |
CWM | High | No exmple available as of November, 2024 | |
IMF2 | Low | BC Ministry of Environment - BC Frogwatch Atlas | http://maps.gov.bc.ca/ess/hm/bcfa/ |
IMF2 | High | DataBC iMapBC | https://maps.gov.bc.ca/ess/hm/imap4m/ |
Leaflet | Low | BC Wildfire Dashboard | https://wildfiresituation.nrs.gov.bc.ca/map |
Mapbox GL JS | Low | BC Ministry of Environment - Groundwater Wells and Aquifers | https://apps.nrs.gov.bc.ca/gwells/ |
SMK | Low | BC Minstry of Health - Assisted Living and Residential Care Locations | https://moh.apps.gov.bc.ca/alrc/ |
SMK | High | Translink - Truck Route Planner | https://translink.apps.gov.bc.ca/trp/ |
Framework Comparison
Costs and Skillsets
Costs can be highly variable and are influenced by multiple factors; as such, it is best to first identify the solution that will meet user needs, then collaborate with OCIO Data Systems & Services (formerly DataBC) or Natural Resource Information & Digital Services (NRIDS) to arrive at a mutually agreeable business arrangement.
As the owner or developer of the application I want to understand…
AGO | CWM | IMF2 | SMK | |
---|---|---|---|---|
What IT skills do you need to develop this solution? | Familiarity with ESRI ecosystem of applications and APIs | Familiarity with javascript and Openlayers/ relationship with NRIDS | Familiarity with GeoCortex Essentials, .NET development for customization, Jenkins for deploying configuration files to DataBC’s environment | Familiarity with NodeJS, leaflet, ArcGIS Javascript API. and HTML/CSS development, github |
What IT skills do you need to administer this solution once it has been implemented? | Familiarity with ESRI ecosystem of applications | Familiarity with JSON configuration files, CWM Configuration, NRIDS deployment pathways | DataBC staff are well versed in ArcGIS Server, Geocortex Essentials administration; customizations require .NET and familiarity with DataBC’s IMF2 Dapplication Development and Delivery Standards | Familiarity with JSON configuration files, source to hosting deployment pathways, e.g. github to OpenShift |
What type of documentation is available and when was it updated? | Online updated regularly, see - Website | Missing as of November, 2024 | Online, updated by GeoCortex, see - Website | Updated by DataBC, ongoing, see - Website |
As a developer what do I control? | With an ArcGIS Online account I can create maps and feature services and build ESRI/ArcGIS javascript applications - see website here | No available examples as of November, 2024. | Site configuration and custom workflow development using .NET and deployment to DataBC’s Delivery environment using Jenkins | Checkout the developer documentation here and fork the open source code here |
User Interface
As the end user of the application I want…
AGO | CWM | IMF2 | SMK | |
---|---|---|---|---|
Can I print a map with a user-defined scale, paper size or in combination with a report? | 7 | |||
Can I draw and edit an Area of Interest ? | 7 | |||
Can data be downloaded that was created on the map ie. Area of Interest AOI | 7 | |||
Can I import/export data layers that are in different geographic projection as the map? | no* available in ESRI Javascript API/desktop tools | import CSV supports projection specification as does WFS/WMS; map is Geographic | ||
Can I add markup text or drawings onto my map for printing? | ||||
Can I turn on or off specific map layers while viewing the map? | ||||
Can I download operational business data from the map/application? | yes* webappbuilder csv, snippet of data | no | redirects to DataBC Distribution for BCGW data | Selection/extraction of feature is a configurable feature |
Can you import or load data for use in the map? | 7 | |||
Can you search for geographic locations or a specific feature on the map? | ||||
Does the application provide map navigation tools such as mouse wheel zoom, zoom to extent or zoom to a feature? | ||||
Can you select different basemaps which are either an image or a different style of map? | ?? | |||
Can I save data queries within the map to find locations or interests? | ||||
Can the client easily customize report outputs, either on-screen or printable? | 7) | |||
Can I share a link or a saved session so my client either internal or external to government can look at the same layout, zoom scale, and layers. | customized URL is possible to query for features (no saved session currently) | |||
Can I measure distance or area on my map? | ||||
Can you use this solution on a mobile device (phone or tablet) with a browser? | ||||
Can you access on mobile devices? | ||||
Are there a variety of base maps to choose from? | ||||
Can I identify and discover relationships among features? | 2 | |||
Can I detect statistically significant patterns? | heat map representation of vector data is built-in | |||
Can I make predictions using analytical models | 3 | |||
Can I re-symbolize, modify, or customize map data or labels? | 4 | 7 | ||
Can I customize printing of maps? | 4 | 7 | ||
Can I save and share the work with others? | 7 | |||
Can I prepare specific datasets for off-line use? | 7 | |||
Can I collect data on this application? | 5 | 7 | ||
Can I edit data on this application? | 6 | 6 | 7 | |
Can I work off-line (access without Internet) on this application? | 7 | 7 |
Backend Technology
As the owner or developer of the application I want to understand…
AGO | CWM | IMF2 | SMK | |
---|---|---|---|---|
Where can this application be hosted - in the cloud, on a Government server or elsewhere? | Cloud | On-Premise | On-Premise | All |
Where is the data stored - in the cloud, on Government server or local drive. | All | Cloud, On-Premise | All | Cloud, On-Premise, Local to app |
What capability does the application have to secure data or elements of the application based on IDIR/BCeID user and/or layer level security? | AGO BCGov Subscription | WebADE and Siteminder | WebADE and Siteminder | 7 |
Can the application be used when it isn’t connected to the internet? | 7 | 7 | ||
What is the maturity and activity level of the project as measured in the Open Source environment? | Low | High | Low | High |
Does the application allow the user the ability to make small changes that are easy to maintain? (Configuration*) | 9 | 8 | ||
Does the application allow the user the ability to invest more in build and maintenance to create a unique experience? (Customization*) | 8 | 7 | ||
Does the application allow the someone else the ability to manage it? | ||||
Does all data reside in Canada? | 11 | |||
Does the application provide automatic server scalability to meet use levels? | 13 | depends on deployment pattern but generally supported | ||
Does the application prevent users from downloading datasets they are viewing? | ||||
Security - does the application manage users access at the application level? | 14 | |||
Security - does the application manage users access at the data layer level | 15 | 15 | ||
Does the application allow my team to self-publish updates? | ||||
Can the application be deployed anywhere? |
Other Spatial Libraries
Libary Name | Description | Language | Link |
---|---|---|---|
GDAL - Geospatial Data Abstraction Library | a library for reading and writing raster and vector geospatial data formats, and is released under the permissive X/MIT style free software license by the Open Source Geospatial Foundation | C, C++, Python | see website |
Leaflet | Open-source JavaScript library for mobile-friendly interactive maps. | JavaScript | see website |
Openlayers | Open-source JavaScript library developed for the use of geographic information. | JavaScript | see website |
MapBox | Mapbox-gl-js is no longer under the 3-Clause BSD license. By upgrading to this release, you are agreeing to Mapbox terms of service. | Javascript | see website |
OpenStreeMap | OpenStreetMap is a map of the world, created by people like you and free to use under an open license. | Open Data | see website |
SO MANY OTHERS! | The Open Source Geospatial Foundation (OSGEO) provides a list of Geospatial libraries that offer developers access to a wide range of spatial data, web services, analysis and processing. These libraries are often available as command line tools, and are responsible for the heavy-lifting in many of the popular desktop and web service solutions. | see website |
Supporting and Standalone Spatial Services
These REST based web services are standalone and are supported by each of these Web Mapping Frameworks described above.
Name | Function | More Information |
---|---|---|
BC Web Map Libary | This service provide web service application program interfaces (API) that return georeferenced map images and services per the Open Geospatial Consortium Web Mapping/Feature Service (WMS/WFS) Protocols based on a variety of geographic data sources. see slides for intro here | See Website and the BC Data Catalogue |
BC ArcGIS Online Layer Gallery | This provides a list of all the ArcGIS Feature Layers that are equivalent to the BC Web Map Library | See gallery |
Geomark | The Geomark Web Service allows you to create and share geographic areas of interest from a variety of map coordinate systems and spatial formats. This service is helpful when you need to share an area of interest with people who require that the data be in a different map projection or different mapping software formats. | See website |
BC Address Geocoder | The BC Address Geocoder can be used to resolve locations and addresses in British Columbia. First it can use physical locations (i.e., latitude and longitude) to provide a street address. The second capability is to search a standardized form of civic and non-civic addresses. | See website |
BC Route Planner | The BC Route Planner offers the most efficient intinerary or route to travel on public roads in British Columbia. These plans that are based on the BC Digital Road Atlas compute the shortest or fastest route between start and end points and returns the route, distance, time, and directions. | See website |
BC Geographical Names | The BC Geographical Names REST web service contains a database of 50,000 current and former BC geographic place names. This service can be used to incorporate geographic name searches and location details into other web sites and applications. | See website |
DataBC Data Publication and Services | The DataBC Program encourages and enables the strategic management and sharing of data across the government enterprise and with the public. It is responsible for the BC Data Catalogue, the Open Data initiative and the B.C. Spatial Data Infrastructure and associated products and services. | See website |