Go to file
Raul Ochoa f0eeb393d6 Use windshaft render-limits branch
Bump cartodb-redis version
Regenerate npm-shrinkwrap.json as I accidentaly deleted it
2015-04-01 15:49:01 +02:00
assets Adds default image placeholder for http renderer to use as fallback 2015-02-09 15:08:36 +01:00
config/environments Mapnik renderer configuration not part of the renderer root configuration 2015-04-01 15:04:56 +02:00
docs Remove metrics for authorizedBy* 2015-03-27 17:57:46 +01:00
lib/cartodb Pick render limit and add it to request context 2015-04-01 15:11:58 +02:00
scripts Adds script/tool to go from lzma base64 encoded string to mapconfig 2015-03-11 15:16:24 +01:00
test Tests for surrogate keys invalidation 2015-03-30 17:51:17 +02:00
tools Remove flush_cache tool as it doesn't make sense anymore 2015-02-09 19:04:38 +01:00
.gitignore Add option to generate coverage metrics using istanbul module 2015-03-23 14:05:29 +01:00
.jshintrc jshint adds mocha globals 2015-03-30 12:31:44 +02:00
.travis.yml apt-get update before apt-get install 2015-02-09 18:39:24 +01:00
app.js Removes rollbar as optional logger 2015-03-31 11:36:29 +02:00
configure Have ./configure tolerate unknown options 2014-10-08 10:10:58 +02:00
HOWTO_RELEASE Update release document 2014-04-09 09:14:20 +02:00
LICENSE Switch to 3-clause BSD license 2014-03-20 10:20:51 +01:00
Makefile PHONY coverage 2015-03-23 14:21:08 +01:00
NEWS.md Mapnik renderer configuration not part of the renderer root configuration 2015-04-01 15:04:56 +02:00
npm-shrinkwrap.json Use windshaft render-limits branch 2015-04-01 15:49:01 +02:00
package.json Use windshaft render-limits branch 2015-04-01 15:49:01 +02:00
README.md Specific dependencies for building node-canvas 2015-03-11 14:25:36 +01:00
run_tests.sh Add option to generate coverage metrics using istanbul module 2015-03-23 14:05:29 +01:00

Windshaft-CartoDB

Build Status

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_id as 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 infowindow endpoint for windshaft (DEPRECATED)
  • provides a map_metadata endpoint for windshaft (DEPRECATED)
  • provides a template maps API

Requirements

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

Build/install

To fetch and build all node-based dependencies, run:

git clone
npm install

Note that the npm install step will populate the node_modules/ directory with modules, some of which being compiled on demand. If you happen to have startup errors you may need to force rebuilding those modules. At any time just wipe out the node_modules/ directory and run npm install again.

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.