* Force png tile generation for static maps If the user tries to generate a static map requesting JPG it will fail because is going to try to generate the tiles using JPG as format which is not supported by now, this bug was introduced in the version 4.0.1 So we now force, again, the tiles to be generated as PNG but we pass the requested format, JPG, to windshaft to generate the final image as the user reqests * Added support to define image format in the image assertions * Added test for JPEG static image generation Also I've added support for: - JPEG images - Different tolerance based on the file type, it seems that due to different compression we need different tolerance for JPG images
Windshaft-CartoDB
This is the CartoDB Maps API tiler. It extends Windshaft with some extra functionality and custom filters for authentication.
- reads dbname from subdomain and cartodb redis for pretty tile urls
- configures windshaft to publish
cartodb_idas the interactivity layer - gets the default geometry type from the cartodb redis store
- allows tiles to be styled individually
- provides a link to varnish high speed cache
- provides a template maps API
Install
See INSTALL.md for detailed installation instructions.
Configure
Create the config/environments/.js files (there are .example files
to start from). You can optionally use the ./configure script for this,
see ./configure --help to see available options.
Look at lib/cartodb/server_options.js for more on config
Upgrading
Checkout your commit/branch. If you need to reinstall dependencies (you can check NEWS) do the following:
rm -rf node_modules; yarn
Run
node app.js <env>
Where is the name of a configuration file under config/environments/.
Note that caches are kept in redis. If you're not seeing what you expect there may be out-of-sync records in there. Take a look: http://redis.io/commands
Documentation
The docs directory contains different documentation resources, from higher level to more detailed ones: The Maps API defined the endpoints and their expected parameters and outputs.
Examples
CartoDB's Map Gallery showcases several examples of visualisations built on top of this.
Contributing
See CONTRIBUTING.md.
Developing with a custom windshaft version
If you plan or want to use a custom / not released yet version of windshaft (or any other dependency) the best option is
to use yarn link. You can read more about it at yarn-link: Symlink a package folder.
Quick start:
~/windshaft-directory $ yarn
~/windshaft-directory $ yarn link
~/windshaft-cartodb-directory $ yarn link windshaft