Go to file
2016-05-26 10:22:52 -04:00
assets Replaces render timeout fallback asset on behalf of @saleiva, thx! 2015-04-08 12:21:57 +02:00
config/environments Added config parameter to windshaft in order to use postgres' function ST_RemoveRepeatedPoints (set false by the default) 2016-05-06 16:50:25 +02:00
docs docs 781 applied to windshaft-api docs 2016-05-26 10:22:52 -04:00
lib/cartodb Order of adapters: named maps should expand named layers as first step 2016-05-24 19:16:38 +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 unused var 2016-05-23 23:29:41 +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 Discourage console usage, global.logger should be used when required 2016-05-05 12:18:22 +02:00
.travis.yml Merge branch 'master' into new_querytables_library 2016-03-04 00:39:14 +01:00
app.js Discourage console usage, global.logger should be used when required 2016-05-05 12:18:22 +02:00
configure Remove sql api related configuration from configure script 2015-09-29 20:00:39 +02:00
CONTRIBUTING.md Adds notes about contributing 2015-09-08 16:44:44 +02:00
HOWTO_RELEASE Be more clear about how to upgrade shrinkwrap file 2015-10-22 16:26:37 +02:00
INSTALL.md Remove imagemagick reference from install instructions 2016-02-22 16:43:43 +01:00
LICENSE Adds notes about contributing 2015-09-08 16:44:44 +02:00
Makefile Make tests running before checkstyle/lint 2016-05-23 13:03:56 +02:00
NEWS.md Upgrades turbo-carto to 0.10.0 2016-05-19 16:54:56 +02:00
npm-shrinkwrap.json Upgrades turbo-carto to 0.10.0 2016-05-19 16:54:56 +02:00
package.json Upgrades turbo-carto to 0.10.0 2016-05-19 16:54:56 +02:00
README.md Adds some notes about how to npm link windshaft for development 2016-02-15 16:53:31 +01: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

Install

See INSTALL.md for detailed installation instructions.

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

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.

Developing with a custom windshaft version

If you plan or want to use a custom / not released yet version of windshaft (or any other dependency) the best option is to use npm link. You can read more about it at npm-link: Symlink a package folder.

Quick start:

~/windshaft-directory $ npm install
~/windshaft-directory $ npm link
~/windshaft-cartodb-directory $ npm link windshaft