Go to file
2015-07-07 12:27:09 +02:00
assets Replaces render timeout fallback asset on behalf of @saleiva, thx! 2015-04-08 12:21:57 +02:00
config/environments Adds some notes about uv_threadpool_size and mapnik renderer pool size 2015-07-07 12:27:09 +02:00
docs Update Map-API docs 2015-06-22 11:14:57 -04:00
lib/cartodb Adds layergroupid header 2015-06-18 01:13:33 +02:00
scripts Adds script/tool to go from lzma base64 encoded string to mapconfig 2015-03-11 15:16:24 +01:00
test Update CDB_QueryTables function 2015-06-29 16:42:55 +02:00
tools Deprecating scripts from tools directory 2015-06-25 18:07:48 +02:00
.gitignore Add option to generate coverage metrics using istanbul module 2015-03-23 14:05:29 +01:00
.jshintignore adds tests as part of the jshint target 2015-04-27 18:08:55 +02:00
.jshintrc Adds some tests for limits based on user limits 2015-04-01 17:39:02 +02:00
.travis.yml apt-get update before apt-get install 2015-02-09 18:39:24 +01:00
app.js redis-mpool noReadyCheck and unwatchOnRelease options from config 2015-07-06 11:52:34 +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 adds tests as part of the jshint target 2015-04-27 18:08:55 +02:00
NEWS.md Stubs next version 2015-07-06 11:58:08 +02:00
npm-shrinkwrap.json Stubs next version 2015-07-06 11:58:08 +02:00
package.json Stubs next version 2015-07-06 11:58:08 +02:00
README.md Less specific upgrade help 2015-07-01 07:22:37 +02: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.

Upgrading

Checkout your commit/branch. If you need to reinstall dependencies (you can check NEWS) do the following:

rm -rf node_modules; npm install

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.