This project provides a collection of full planet vector basemap styles designed for use with Maplibre-GL and Mapbox-GL. All styles are based on OpenStreetMap data with Tilezen vector tiles and are deployed with PMTiles. These styles are free to use for non-commercial projects.
To deploy styles, you first need to set up your PMTiles. Follow the official documentation to get start. In this project, PMTiles data is stored in S3-compatible storage, such as AWS S3, DigitalOcean Spaces, Cloudflare R2, or similar services. Static assets, such as glyphs, styles, and sprites, also for landing page, are deployed using a Cloudflare Worker with static assets, alongside the main worker, which transforms XYZ URLs to tile requests by accessing PMTiles data from S3 storage. This setup allows us to cache non-tile URLs as static assets, and optimize XYZ URL requests to minimize sub-requests to S3.
To deploy, you need to set the following environment variables in cloudflare config:
Variable | Type | Description |
---|---|---|
BUCKET |
string | Name of your S3 Buckets |
ACCESS_KEY_ID |
string | Access key ID for your storage provider |
SECRET_ACCESS_KEY |
string | Secret access key for your storage provider |
If you want to self host your styles, make sure you change all source url in all styles to your urls.
We provide 11 styles, and all styles based on protomaps basemaps, including glyphs and sprites.
- Light
- Dark
- Black
- White
- Grayscale
- Light No Label
- Dark No Label
- Black No Label
- White No Label
- Grayscale No Label
- Light 3D
- (soon...)
You must add attribution if you use any of these styles. At least, include OpenStreetMap contributors, or full attribution
<a href="https://datawan.id">Datawan</a> | <a href="https://github.com/protomaps/basemaps">Protomaps</a> © <a href="https://openstreetmap.org">OpenStreetMap</a>