Go to file
2015-09-25 16:03:20 +02:00
assets Replaces render timeout fallback asset on behalf of @saleiva, thx! 2015-04-08 12:21:57 +02:00
config/environments Use torque renderer config 2015-09-04 16:33:40 +02:00
docs Update Map-API docs 2015-06-22 11:14:57 -04:00
lib/cartodb Named map updates does not emit update event if template didn't change 2015-09-23 19:59:39 +02:00
scripts Adds script/tool to go from lzma base64 encoded string to mapconfig 2015-03-11 15:16:24 +01:00
test Remove redis keys after each test 2015-09-25 16:03:20 +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 Don't allow to use suite related functions anymore 2015-09-25 13:37:32 +02:00
.travis.yml apt-get update before apt-get install 2015-02-09 18:39:24 +01:00
app.js Set backlog on server listen 2015-09-18 16:25:10 +02:00
configure Have ./configure tolerate unknown options 2014-10-08 10:10:58 +02:00
CONTRIBUTING.md Adds notes about contributing 2015-09-08 16:44:44 +02:00
HOWTO_RELEASE Update release document 2014-04-09 09:14:20 +02:00
LICENSE Adds notes about contributing 2015-09-08 16:44:44 +02:00
Makefile Makefile getting tests with find command 2015-09-16 23:18:38 +02:00
NEWS.md Stubs next version 2015-09-21 22:49:06 +02:00
npm-shrinkwrap.json Use windshaft's backend-foundations branch as it already has mvt support 2015-09-22 14:13:09 +02:00
package.json Use windshaft's backend-foundations branch as it already has mvt support 2015-09-22 14:13:09 +02:00
README.md Starts modifying readme 2015-09-18 02:58:16 +02:00
run_tests.sh Show some redis stats after running tests 2015-09-23 17:18:58 +02: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 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.

Contributing

See CONTRIBUTING.md.