<h1 align="center">mapbox-gl-rs</h1>
<p align="center">Unofficial Rust binding for <a href="https://github.com/mapbox/mapbox-gl-js">mapbox-gl-js</a></p>
<p align="center"><img src="logo.svg" style="width:80px"/></p>
## What's this?
[mapbox-gl-js](https://github.com/mapbox/mapbox-gl-js) is an open source library for rendering a beautiful vector-based maps in web browser, built with Mapbox and OSS community. The goal of this project is to create a rust binding for `mapbox-gl-js` via [WebAssembly](https://webassembly.org/) so that Rustacean can build webapps with beautiful Mapbox maps only in Rust.
**NOTE:** `mapbox-gl-rs` is in super-duper infant stage. Most of the features are WIP. Please bear with that if you're interested! Also, any contributions e.g. bug reports, feature requests, sending a patch are appreciated.
## How does it work?
[wasm-bindgen](https://rustwasm.github.io/wasm-bindgen/) is a Rust library to compile Rust code into WebAssembly, which is used to run Rust based application on web browsers, e.g. [egui](https://www.egui.rs/#demo) and [RustPython](https://rustpython.github.io/). Most of the people don't know that `wasm-bindgen` also allows to invoke JavaScript code in Rust. This project leverages this feature to provide a Rust binding for `mapbox-gl-js`.
<p align="center"><img src="how-it-works.svg"/></p>
## Supported features
## Examples