Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/JamesLMilner/terra-draw
A library for drawing on maps that supports Mapbox, MapLibre, Google Maps, OpenLayers and Leaflet out the box
https://github.com/JamesLMilner/terra-draw
draw drawing geojson google-maps-api hacktoberfest leaflet map mapbox-gl maplibre maps polygon
Last synced: 3 months ago
JSON representation
A library for drawing on maps that supports Mapbox, MapLibre, Google Maps, OpenLayers and Leaflet out the box
- Host: GitHub
- URL: https://github.com/JamesLMilner/terra-draw
- Owner: JamesLMilner
- License: mit
- Created: 2022-07-15T17:02:55.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-21T20:12:23.000Z (4 months ago)
- Last Synced: 2024-10-22T14:06:57.092Z (4 months ago)
- Topics: draw, drawing, geojson, google-maps-api, hacktoberfest, leaflet, map, mapbox-gl, maplibre, maps, polygon
- Language: TypeScript
- Homepage: https://terradraw.io
- Size: 8.18 MB
- Stars: 473
- Watchers: 8
- Forks: 55
- Open Issues: 28
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-maplibre - Terra Draw - The library has a MapLibre GL JS adapter to provide drawing and geometry editing functionality to the map (Other Plugins / Vue)
README
![Terra Draw CI Badge](https://github.com/JamesLMilner/terra-draw/actions/workflows/ci.yml/badge.svg)
[![npm version](https://badge.fury.io/js/terra-draw.svg)](https://badge.fury.io/js/terra-draw)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](./assets/readme.gif)
### Library Support
Terra Draw uses the concept of 'adapters' to allow it to work with a host of different mapping libraries. Currently supported are:
- [Leaflet](https://leafletjs.com/) v1
- [OpenLayers](https://openlayers.org/) v10
- [Mapbox GL JS](https://www.mapbox.com/mapbox-gljs) v2
- [MapLibre](https://maplibre.org/maplibre-gl-js/docs/) v2/v3
- [Google Maps JS API](https://developers.google.com/maps/documentation/javascript/overview) v3
- [ArcGIS JavaScript SDK](https://developers.arcgis.com/javascript/latest/) v4 (MapView)### Getting Started
Please see the [the getting started guide](./guides/1.GETTING_STARTED.md) - this provides a host of information on how to get up and running with Terra Draw.
### Development & Contributing
* For development, please see the [the development documentation](./guides/7.DEVELOPMENT.md)
* For guidance on contributing, please see the [the contributing documentation](./guides/7.DEVELOPMENT.md#contributing)### Project Website
You can check out the official Terra Draw website at [terradraw.io](https://www.terradraw.io). If you are interested in contributing to the website please see [this repository](https://www.github.com/JamesLMilner/terra-draw-website).
### Contact
Email: [[email protected]](mailto:[email protected])
### License
MIT