2011-09-05 07:00:41 +08:00
|
|
|
Windshaft-CartoDB
|
|
|
|
==================
|
|
|
|
|
2012-07-09 19:21:19 +08:00
|
|
|
NOTE: requires node-0.4.x
|
|
|
|
|
2012-03-15 18:37:25 +08:00
|
|
|
This is the CartoDB map tiler. It extends Windshaft with some extra
|
|
|
|
functionality and custom filters for authentication
|
2011-09-05 07:17:39 +08:00
|
|
|
|
2011-10-08 01:31:45 +08:00
|
|
|
* 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
|
2011-12-13 02:02:10 +08:00
|
|
|
* allows tiles to be styled individually
|
|
|
|
* provides a link to varnish high speed cache
|
2011-10-08 01:31:45 +08:00
|
|
|
* provides a infowindow endpoint for windshaft
|
|
|
|
* provides a map_metadata endpoint for windshaft
|
2011-09-05 07:17:39 +08:00
|
|
|
|
|
|
|
Install
|
|
|
|
-------
|
2012-03-15 19:08:50 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
```
|
|
|
|
git clone
|
|
|
|
npm install
|
2012-03-15 19:08:50 +08:00
|
|
|
```
|
|
|
|
|
2012-04-04 21:17:07 +08:00
|
|
|
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.
|
|
|
|
|
2012-03-15 19:08:50 +08:00
|
|
|
Configure
|
|
|
|
---------
|
|
|
|
|
|
|
|
Edit config/environments/<env>.js files
|
|
|
|
|
|
|
|
Look at lib/cartodb/server_options for more on config
|
|
|
|
|
|
|
|
Run
|
|
|
|
---
|
|
|
|
|
|
|
|
```
|
2012-09-04 16:52:42 +08:00
|
|
|
node app.js [development | staging | production]
|
2011-09-05 07:17:39 +08:00
|
|
|
```
|
|
|
|
|
2012-04-18 18:09:43 +08:00
|
|
|
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
|
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
|
|
|
|
URLs
|
|
|
|
----
|
|
|
|
|
|
|
|
**TILES**
|
2011-09-05 07:36:31 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
[GET] subdomain.cartodb.com/tiles/:table_name/:z/:x/:y.[png|png8|grid.json]
|
|
|
|
|
|
|
|
Args:
|
2011-09-05 07:36:31 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
* sql - plain SQL arguments
|
|
|
|
* interactivity - specify the column to use in UTFGrid
|
2012-03-15 18:37:25 +08:00
|
|
|
* cache_buster - if needed you can add a cachebuster to make sure you're
|
|
|
|
rendering new
|
2011-09-05 07:17:39 +08:00
|
|
|
* geom_type - override the cartodb default
|
2011-12-13 02:02:10 +08:00
|
|
|
* style - override the default map style with Carto
|
2011-09-05 07:17:39 +08:00
|
|
|
|
2011-09-05 07:36:59 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
**STYLE**
|
2011-09-05 07:36:31 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
[GET/POST] subdomain.cartodb.com/tiles/:table_name/style
|
|
|
|
|
|
|
|
Args:
|
2011-09-05 07:36:31 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
* style - the style in CartoCSS you want to set
|
|
|
|
|
2011-09-05 07:36:59 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
**INFOWINDOW**
|
2011-09-05 07:36:31 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
[GET] subdomain.cartodb.com/tiles/:table_name/infowindow
|
|
|
|
|
|
|
|
Args:
|
2011-09-05 07:36:31 +08:00
|
|
|
|
2011-09-05 07:17:39 +08:00
|
|
|
* infowindow - returns contents of infowindow from CartoDB.
|
|
|
|
|
|
|
|
|
2011-10-08 01:31:45 +08:00
|
|
|
**MAP METADATA**
|
|
|
|
|
|
|
|
[GET] subdomain.cartodb.com/tiles/:table_name/map_metadata
|
|
|
|
|
|
|
|
Args:
|
|
|
|
|
|
|
|
* infowindow - returns contents of infowindow from CartoDB.
|
|
|
|
|
|
|
|
|
2012-03-15 18:37:25 +08:00
|
|
|
All GET requests are wrappable with JSONP using callback argument,
|
|
|
|
including the UTFGrid map tile call.
|