You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
Sandro Santilli 34afe4c1c8
Document existance of the ./configure script
12 years ago
config Make logging format configurable (closes #4) 12 years ago
lib/cartodb Make logging format configurable (closes #4) 12 years ago
test Replace "vizzuality.localhost.lan" with "localhost" 12 years ago
tools Fix iteration on redis keys 12 years ago
.gitignore Remove config files from repo, provide ./configure script to generate 12 years ago
LICENCE License is BSD (added file and reference) 12 years ago
Makefile Remove config files from repo, provide ./configure script to generate 12 years ago
NEWS.md 1.0.0 version 12 years ago
README.md Document existance of the ./configure script 12 years ago
app.js Require carto_data only after setting the global env (closes #28) 12 years ago
cluster.js Use cluster2 for clustering (see #33) 12 years ago
configure Remove config files from repo, provide ./configure script to generate 12 years ago
npm-shrinkwrap.json Update dependencies to have node-0.8 support 12 years ago
package.json fixed problem in cluster2 with pidfile name 12 years ago
run_tests.sh Delegate user permission to PostgreSQL (closes #18) 12 years ago

README.md

Windshaft-CartoDB

NOTE: requires node-0.8.x

This is the CartoDB map 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
  • provides a map_metadata endpoint for windshaft

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

URLs

TILES

[GET] subdomain.cartodb.com/tiles/:table_name/:z/:x/:y.[png|png8|grid.json]

Args:

  • sql - plain SQL arguments
  • interactivity - specify the column to use in UTFGrid
  • cache_buster - if needed you can add a cachebuster to make sure you're rendering new
  • geom_type - override the cartodb default
  • style - override the default map style with Carto

STYLE

[GET/POST] subdomain.cartodb.com/tiles/:table_name/style

Args:

  • style - the style in CartoCSS you want to set

INFOWINDOW

[GET] subdomain.cartodb.com/tiles/:table_name/infowindow

Args:

  • infowindow - returns contents of infowindow from CartoDB.

MAP METADATA

[GET] subdomain.cartodb.com/tiles/:table_name/map_metadata

Args:

  • infowindow - returns contents of infowindow from CartoDB.

All GET requests are wrappable with JSONP using callback argument, including the UTFGrid map tile call.