A modular geospatial engine written in JavaScript
Turf is a JavaScript library for spatial analysis. It includes traditional spatial operations, helper functions for creating GeoJSON data, and data classification and statistics tools. Turf can be added to your website as a client-side module, or you can run Turf server-side with Node.js (see below).
Read our getting started guide to begin working with Turf.
Or explore the Turf API and examples at turfjs.org.
Turf is currently published to work with any reasonably modern Javascript runtime.
Node is a first class citizen, and we recommend using an Active or Maintenance LTS release.
Other runtimes, such as Deno or Bun, are not officially supported. We would be very interested to hear your experiences though.
Turf uses Babel to transpile to a JavaScript version usable by most modern browsers. Any browser that matches the following criteria as defined by Browserslist:
> 0.25%, last 2 versions, fully supports es5, not dead
This project exists thanks to all the people who contribute. If you are interested in helping, check out the Contributing Guide.
Thank you to all our backers! 🙏 [Become a backer]
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]