maplibre/
lib.rs

1//! # Maplibre-rs
2//!
3//! A multi-platform library for rendering vector tile maps with WebGPU.
4//!
5//! Maplibre-rs is a map renderer that can run natively on MacOS, Linux, Windows, Android, iOS and the web.
6//! It takes advantage of Lyon to tessellate vector tiles and WebGPU to display them efficiently.
7//! Maplibre-rs also has an headless mode (*work in progress*) that can generate raster images.
8//!
9//! The official guide book can be found [here](https://maplibre.org/maplibre-rs/docs/book/).
10//!
11//! ### Example
12//!
13//! To import maplibre-rs in your `Cargo.toml`:
14//!
15//! ```toml
16//! maplibre = "0.0.2"
17//! ```
18
19#![deny(unused_imports)]
20
21extern crate core;
22
23// Export tile format
24pub use geozero::mvt::tile; // Used in transferables.rs in web/singlethreaded
25
26pub mod euclid {
27    pub use lyon::geom::euclid::*;
28}
29
30pub mod context;
31pub mod coords;
32#[cfg(feature = "headless")]
33pub mod headless;
34pub mod io;
35pub mod platform;
36// TODO: Exposed because of camera
37pub mod render;
38pub mod style;
39pub mod util;
40
41pub mod window;
42// Exposed because of doc-strings
43pub mod schedule;
44
45pub mod environment;
46
47// Used for benchmarking
48pub mod benchmarking;
49
50pub mod background;
51pub mod event_loop;
52pub mod kernel;
53pub mod map;
54pub mod plugin;
55pub mod tcs;
56
57// Plugins
58pub mod debug;
59pub mod geojson;
60pub mod raster;
61pub mod vector;
62
63mod legacy;
64pub mod sdf;