Go to file
2015-03-23 17:27:24 +01:00
assets Adds default image placeholder for http renderer to use as fallback 2015-02-09 15:08:36 +01:00
config/environments Deprecates old config URLs: /tiles/template and /tiles/layergroup 2015-03-23 15:54:45 +01:00
docs Switching to HTTPS 2015-03-16 12:26:28 +01:00
lib/cartodb Remove config and sql api backend 2015-03-23 15:00:33 +01:00
scripts Adds script/tool to go from lzma base64 encoded string to mapconfig 2015-03-11 15:16:24 +01:00
test Skip server suite for now until we decide what tests we should port 2015-03-23 17:27:24 +01: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 Fix Max cyclomatic complexity value 2015-03-16 00:36:38 +01:00
.travis.yml apt-get update before apt-get install 2015-02-09 18:39:24 +01:00
app.js Remove dump render cache stats 2015-02-11 18:47:11 +01: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 Stubs next version 2015-03-11 17:15:44 +01:00
npm-shrinkwrap.json Re-generate npm-shrinkwrap.json to use windshaft/master. 2015-03-23 12:29:42 +01:00
package.json Remove per-table varnish invalidation 2015-03-23 14:27:41 +01: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.