soda-geoservices

Query Esri Geoservices using a SODA2-style API

Usage no npm install needed!

<script type="module">
  import sodaGeoservices from 'https://cdn.skypack.dev/soda-geoservices';
</script>

README

SODA GeoServices

Build Status js-standard-style

Deploy

Query Esri Geoservices using a SODA2-style API

This is still a work in progress. Check out the list of features and tests to get an idea for the functionality.

Why?

Geoservices are incredibly powerful but have a complex query structure as a result, and can be intimidating for new users - particularly when you want to do a basic query like a group by. This tool provides a layer of abstraction - an easy-to-use API for common queries. It is not meant to cover the breadth of functionality geoservices provide; rather just those provided by the SODA2 spec.

Examples

Using https://services.arcgis.com/fLeGjb7u4uXqeF9q/ArcGIS/rest/services

Usage

  1. Clone this repo and install dependencies via npm install
  2. Copy .env.sample to .env and fill in PROXY_TO with the path to your Geoservices (ex. http://maps2.dcgis.dc.gov/dcgis/rest/services/) and any default parameters in DEFAULT_PARAMS in a=b&c=d format
  3. Run the server via npm start
  4. Append the service to your URL and use SODA2 querystring parameters

For example:

http://localhost:8080/DDOT/AlleyConditions/MapServer/0?alley_material=Asphalt

Development

  • Write tests first and run them via npm test
  • Lint the code style via npm run lint (uses standard)

References

License

MIT