A free and open visual editor for the MapLibre GL styles targeted at developers and map designers.
- 🔗 Design your maps online at https://maputnik.github.io/editor/ (all in local storage)
- 🔗 Use the Maputnik CLI for local style development
- In a Docker, run this command and browse to http://localhost:8888, Ctrl+C to stop the server.
docker run -it --rm -p 8888:8888 maputnik/editor
Mapbox has built one of the best and most amazing OSS ecosystems. A key component to ensure its longevity and independence is an OSS map designer. If you or your organisation has seen value from Maputnik, please consider donating at https://maputnik.github.io/donate
The documentation can be found in the Wiki. You are welcome to collaborate!
- 🔗 Study the Maputnik Wiki
- 📹 Design a map from Scratch https://youtu.be/XoDh0gEnBQo
Maputnik is written in ES6 and is using React and MapLibre GL JS.
We ensure building and developing Maputnik works with the current active LTS Node.js version and above.
Install the deps, start the dev server and open the web browser on http://localhost:8888/
.
# install dependencies
npm install
# start dev server
npm run start
If you want Maputnik to be accessible externally use the --host
option:
# start externally accessible dev server
npm run start -- --host 0.0.0.0
The build process will watch for changes to the filesystem, rebuild and autoreload the editor.
npm run build
Lint the JavaScript code.
# run linter
npm run lint
npm run lint-styles
For E2E testing we use Cypress
Cypress doesn't starts a server so you'll need to start one manually by running npm run start
.
Now open a terminal and run the following using chrome:
npm run test
or firefox:
npm run test -- --browser firefox
See the following docs for more info: (Launching Browsers)[https://docs.cypress.io/guides/guides/launching-browsers]
You can also see the tests as they run or select which suites to run by executing:
npm run cy:open
- maputnik-dev-server - An express.js server that allows for quickly loading the style from any mapboxGL map into mapuntnik.
Thanks to the supporters of the Kickstarter campaign. This project would not be possible without these commercial and individual sponsors.
Influential Stakeholder
Alan McConchie, Odi, Mats Norén, Uli geOps, Helge Fahrnberger (Toursprung), Kirusanth Poopalasingam
Stakeholder
Brian Flood, Vasile Coțovanu, Andreas Kalkbrenner, Christian Mäder, Gregor Wassmann, Lee Armstrong, Rafel, Jon Burgess, Lukas Lehmann, Joachim Ungar, Alois Ackermann, Zsolt Ero, Jordan Meek
Supporter
Sina Martinelli, Nicholas Doiron, Neil Cawse, Urs42, Benedikt Groß, Manuel Roth, Janko Mihelić, Moritz Stefaner, Sebastian Ahoi, Juerg Uhlmann, Tom Wider, Nadia Panchaud, Oliver Snowden, Stephan Heuel, Tobin Bradley, Adrian Herzog, Antti Lehto, Pascal Mages, Marc Gehling, Imre Samu, Lauri K., Visahavel Parthasarathy, Christophe Waterlot-Buisine, Max Galka, ubahnverleih, Wouter van Dam, Jakob Lobensteiner, Samuel Kurath, Brian Bancroft
Maputnik is licensed under MIT and is Copyright (c) Lukas Martinelli and contributors.
Disclaimer This is an independent style editor. As contributor please take extra care of not violating any Mapbox trademarks. Do not get inspired by Mapbox Studio and make your own decisions for a good style editor.