Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A high-performance map tile server powered by MBTiles files

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 assets
Octocat-spinner-32 commands
Octocat-spinner-32 controllers
Octocat-spinner-32 examples
Octocat-spinner-32 lib
Octocat-spinner-32 models
Octocat-spinner-32 servers
Octocat-spinner-32 templates
Octocat-spinner-32 test
Octocat-spinner-32 views
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .npmignore
Octocat-spinner-32 LICENSE.md
Octocat-spinner-32 README.md
Octocat-spinner-32 index.js
Octocat-spinner-32 package.json
README.md

TileStream

A high performance tile server and simple web viewer for MBTiles files.

Features

  • MBTiles-based tile server
  • Minimal gallery view and OpenLayers based viewer of tiles
  • Support for MBTiles interaction using Wax

Requirements

  • TileStream client
    • Tested: Chrome 6+, Firefox 3+, IE8+
    • May work: Opera 11
  • TileStream server
    • Tested: Mac OS X 10.6, Ubuntu 10.10
    • Tested: node 0.4.7
    • Tested: npm v1.0.3
    • At least 613MB memory
    • May work: Older versions, other POSIX-compliant systems

Installation: Mac OS X 10.6

Install Xcode for Mac OS X.

Install node and npm. You may want to use nvm which can install and manage your node installation for you.

Download and unpack TileStream. Build & install:

git clone git://github.com/mapbox/tilestream.git
cd tilestream
npm install .

Start TileStream:

./index.js

TileStream should now be accessible from a browser at http://localhost:8888.

Installation: Ubuntu 10.10

Install build requirements:

sudo apt-get install build-essential libssl-dev libsqlite3-0 libsqlite3-dev

Install node and npm. You may want to use nvm which can install and manage your node installation for you.

Download and unpack TileStream. Build & install:

git clone git://github.com/mapbox/tilestream.git
cd tilestream
npm install .

Start TileStream:

./index.js

TileStream should now be accessible from a browser at http://localhost:8888.

Syslog setup

If you want tilestream to sent messages to syslog instead of stdout, use the --syslog option or specify "syslog": true in the settings JSON file.

Tilestream uses the standard syslog format, and expects a syslog daemon (rsyslogd is known to work) to run on localhost:514, that has to accept TCP connections. To filter tilestream's messages to a particular log file, add

if $programname == 'tilestream' then /var/log/tilestream.log
& ~

to your /etc/rsyslog.conf file and restart the daemon.

Usage

MBTiles files should be placed in the tiles directory. Each tileset can be previewed at http://localhost:8888/map/[filename] where [filename] is the name of the tileset file without the .mbtiles extension.

Tileset filenames:

  • May contain letters (lower or upper case), numbers, underscores or dashes.

    world-light.mbtiles
    control_room.mbtiles
    PartyLikeIts1999.mbtiles
    
  • May not contain periods, spaces, non ASCII characters or other punctuation.

    World Light.mbtiles
    BlueWorld-1.0.mbtiles
    

To see the options available for use with TileStream, run

./index.js start --help

Tests

TileStream tests use Expresso.

npm install -g expresso
cd tilestream
npm test

Contributors

Something went wrong with that request. Please try again.