Go to file
Andrew Thompson 790571fd2c Update Map-API docs
It was not clear to me what the difference was between a mapnik layer and a cartodb layer until I read the comments in the Mapconfig spec! Let's save some users the extra step :)
2015-06-22 11:14:57 -04:00
assets Replaces render timeout fallback asset on behalf of @saleiva, thx! 2015-04-08 12:21:57 +02:00
config/environments Merge pull request #293 from CartoDB/named-static-maps 2015-04-29 12:48:02 +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 Adds test to validate (once it is fixed) long table names do not fail 2015-06-18 16:29:59 +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
.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 Tidy app.js 2015-04-07 13:00:20 +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-06-18 12:55:38 +02:00
npm-shrinkwrap.json Stubs next version 2015-06-18 12:55:38 +02:00
package.json Stubs next version 2015-06-18 12:55:38 +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.