A Node.js map tile server for PostGIS with CartoCSS styling
A Node.js map tile library for PostGIS and torque.js, with CartoCSS styling.
Being a dynamic map renderer, windshaft commits some map server 'sins' in its raw form. The idea is that you the developer will want to graft your own auth/metrics/caching/scaling on top of decent core components. Same old story: high cohesion, low coupling makes us happy. See Windshaft-cartodb.
Windshaft is a library used by cartodb.com, an Open Source Geospatial Database on the Cloud.
More examples built on top of Windshaft can be found in CartoDB's gallery.
Dependencies installation example:
sudo add-apt-repository -y ppa:cartodb/cairosudo apt-get updatesudo apt-get install -y build-essential checkinstall pkg-config libcairo2-dev libjpeg8-dev libgif-dev
npm install [windshaft]
Probably one of the more advanced uses of Windshaft library can be found at Windshaft-cartodb project.
Latest node-mapnik versions comes compiled for some platforms and architectures, in case you need it you can always compile, package and install it manually. The recommended option is to use mapnik-packaging. You can also use other alternatives:
Recommended options to build from source:
We maintain a set of scripts/recipes to package mapnik sdk and node-mapnik. It can help to understand what you really need to package mapnik + node-mapnik to be used from windshaft[-cartodb].
Windshaft has a unit and acceptance test suite.
To execute them, run
You'll need to be sure your PGUSER (or your libpq default) is set to a "superuser" PostgreSQL account, for example:
PGUSER=postgres npm test
You need to install fonts at system level to be able to use them. If you face an issue like
Invalid value for text-face-name, the type font is expected. DejaVu Sans Book (of type string) was given. probably you don't have the
required fonts, try to install DejaVu fonts or any other font needed.
-- Thanks to the Mapnik and Mapbox team for making such flexible tools