Giter VIP home page Giter VIP logo

openstreetmap-carto's Introduction

OpenStreetMap Carto

screenshot

These are the CartoCSS map stylesheets for the Standard map layer on OpenStreetMap.org.

These stylesheets can be used in your own cartography projects, and are designed to be easily customised. They work with Kosmtik and also with the command-line CartoCSS processor.

Since August 2013 these stylesheets have been used on the OSMF tileservers (tile.openstreetmap.org), and are updated from each point release. They supersede the previous XML-based stylesheets.

Installation

You need a PostGIS database populated with OpenStreetMap data in the standard osm2pgsql database layout, along with auxillary shapefiles. See INSTALL.md.

Contributing

Contributions to this project are welcome, see CONTRIBUTING.md for full details.

Versioning

This project follows a MAJOR.MINOR.PATCH versioning system. In the context of a cartographic project you can expect the following:

  • PATCH: When a patch version is released, there would be no reason not to upgrade. PATCH versions contain only bugfixes e.g. stylesheets won't compile, features are missing by mistake, etc.
  • MINOR: These are routine releases and happen every 2-5 weeks. They will contain changes to what's shown on the map, how they appear, new features added and old features removed. They may rarely contain changes to assets i.e. shapefiles and fonts but will not contain changes that require software or database upgrades.
  • MAJOR: Any change the requires reloading a database, or upgrading software dependecies will trigger a major version change.

Roadmap

Initial Release (v1.0.0, December 2012)

This was a full re-implementation of the original OSM style, with only a few bugs discovered later. There's been no interest in creating further point releases in the v1.x series.

Mapnik 2 work (v2.x)

The v2.x series initially focused on refactoring the style, both to to fix glitches and to leverage new features in CartoCSS / Mapnik to simplify the stylesheets with only small changes to the output, as well as removing 'old-skool' tagging methods that are now rarely used. It then started adding new features.

Current work (v3.x)

The v3.x series was triggered by an update to the required Mapnik and CartoCSS versions.

Care is being taken to not get too clever with variables and expressions. While these often make it easier to customise, experience has shown that over-cleverness (e.g. interpolated entities) can discourage contributions.

There are over 300 open requests, some that have been open for years. These need reviewing and dividing into obvious fixes, or additional new features that need some cartographic judgement.

Database schema change (4.x)

The v4.x series will include osm2pgsql lua transforms and a hstore column with all other tags, allowing use of more OpenStreetMap data. Work is being done in the lua branch and issues have their own tag.

Initial releases will not make use of the new features, maintaining compatibility with v3.x and v3.x releases will continue with backports, allowing the style to be rendered from either a new database or an old one.

When sufficient time has passed for users to reload their databases, new features can be used and 3.x compatibility will not be maintained.

Alternatives

There are many open-source stylesheets written for creating OpenStreetMap-based maps using Mapnik, many based on this project. Some alternatives are:

Maintainers

openstreetmap-carto's People

Contributors

matthijsmelissen avatar gravitystorm avatar pnorman avatar matkoniecz avatar nebulon42 avatar kocio-pl avatar sommerluk avatar imagico avatar ian29 avatar polarbearing avatar mkoniecz avatar dkniffin avatar floscher avatar mrwojo avatar danstowell avatar ircama avatar vholten avatar styxman avatar micahcochran avatar andrewhain avatar kreed avatar altoing avatar jdhoek avatar kaldari avatar meased avatar holgerjeromin avatar firefishy avatar erictheise avatar woodpeck avatar micechal avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.