I am currently refactoring this project to use modules instead of a Grunt.js build process. I also no longer work for Cumberland County. But I still think there is value in having this repository as a guide for other GIS developers working in the local government industry. The 2.0 release of this project shows the code as it was using the Grunt.js process.
This is an interactive web map developed for the Cumberland County Planning Commission. Its purpose is the show the location and details for subdivision and land development plans that are submitted to the Planning Department for review and comment.
The map features mulitple widgets that allow users to filter plans by a date range, a single year, or multiple years. There are also widgets/tools that allow users to zoom to a selected municipality (subdivision of County government), or search for a street address.
Our Planning staff edit the plans layer in ArcGIS Enterprise. The dataset is housed in an enterprise geodatabase. The dataset is published as an editable feature service, as well as a non-editable map service.
My goal in putting this project on GitHub is to provide other government agencies a sample app, from which they can build their own solutions. This project uses the Leaflet.js library (and various plugins), a Bootstrap "theme," and Esri REST map services (including a custom tiling scheme).
As enhancements are added to the app, I'll do my best to push those changes to this repository.
- Leaflet.js: base platform for interactive web map
- Esri Leaflet: utilize Esri REST services
- Esri Leaflet Renderers: use defined symbology in feature layers (map/feature service)
- Esri Leaflet Geocoder: search for addresses against a geocoding service (geocode service)
- Esri Leaflet Legend: generate a legend from a dynamic map layer (map service)
- Leaflet Zoom Home: add a full map extent button to map zoom control
- Leaflet Locate Control: find my location map control
- Proj4JS: transform coordinates from one coordinate system to another, including datum transformations
- Proj4Leaflet: use tile map service with custom tiling scheme and non-standard projection
- Bootstrap: generate a good looking app across browsers and devices
- Esri Calcite Maps: Bootstrap theme for web map apps
- jQuery: Bootstrap requires it, so I might as well use it!
- jQuery UI: date selector for feature layer filter widget
- Font Awesome: Various icons used for UI elements.