README.md

June 18, 2026 ยท View on GitHub

Terra Draw logo

Terra Draw CI Badge npm Version GitHub Sponsors

Frictionless map drawing across mapping libraries.

Terra Draw centralizes map drawing logic and provides a host of out-of-the-box drawing modes that work across different JavaScript mapping libraries. It also allows you to bring your own modes!

An example of drawing geodesic lines using Terra Draw with Leaflet

Library Support

Terra Draw uses the concept of 'adapters' to allow it to work with a host of different mapping libraries. Built-in adapters are currently exposed as different packages in this monorepo; you can find out more in the adapters guide. The currently supported libraries are:

LibraryVersion supportednpm package
Leafletv1terra-draw-leaflet-adapter
OpenLayersv10terra-draw-openlayers-adapter
MapLibre GL JSv4/5terra-draw-maplibre-gl-adapter
Google Maps JS APIv3terra-draw-google-maps-adapter
Mapbox GL JSv3terra-draw-mapbox-gl-adapter
ArcGIS JavaScript SDKv4terra-draw-arcgis-adapter

Getting Started

Please see the the getting started guide - this provides a host of information on how to get up and running with Terra Draw. You can see the auto generated API docs on the Terra Draw website.

Development & Contributing

Project Website

You can check out the official Terra Draw website at terradraw.io. If you are interested in contributing to the website please see this repository.

Sponsorship

Terra Draw is made possible by companies and organisations that want to see it thrive. Please see the Sponsorship page for more information about how to sponsor the work done here.

Contact

Email: contact@terradraw.io

License

MIT