Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

steinmetz

METACEO11MIT0.1.10TypeScript support: included

A tile generator for mapping applications.

readme

Stonemason

steinmetz

Steinmetz (german for stonemason) is a tile generator for mapping applications.

This repository contains the core code that powers derived applications (you can find the completed and planned applications in the README file below.)

Find a full example here to run yourself.

Installation & Use

For programmatic usage (use in your Node.js application) install via NPM. Click here to find the package's page.

npm install --save steinmetz

Objectives

  • <input checked="" disabled="" type="checkbox"> Prioritize objectives. (90443d7)
  • <input disabled="" type="checkbox"> Utilize GeoJSON for data objects.
  • <input disabled="" type="checkbox"> Provide a stream of rendered tiles, instead of writing files.
  • <input checked="" disabled="" type="checkbox"> Render points. (3d1c44e)
  • <input disabled="" type="checkbox"> Render polylines.
  • <input disabled="" type="checkbox"> Render polygons.
  • <input disabled="" type="checkbox"> Optimize object rendering.
  • <input disabled="" type="checkbox"> Complete writing documentation.
  • <input disabled="" type="checkbox"> Complete examples/wiki.
  • <input disabled="" type="checkbox"> Support configuration files.
  • <input disabled="" type="checkbox"> Support WebHooks and/or events for rendering lifecycle.
  • <input disabled="" type="checkbox"> Support exporting a manifest that would include all rendered tiles, E-Tags, labels, etc.
  • <input disabled="" type="checkbox"> Research into replacing the canvas dependency with something better, or with something that does not have so many other dependencies (Cairo specifically.)
  • <input disabled="" type="checkbox"> Render tiles other than 256px squares.

Derivatives

  • <input disabled="" type="checkbox"> A file writer.
  • <input disabled="" type="checkbox"> A configurable HTTP server.
  • <input disabled="" type="checkbox"> A CLI application.

Dependencies

  • Using typescript for source code.
  • Using JSONStream for non-blocking JSON reading/writing.
  • Using sharp for overlapping PNG files.
  • Using canvas for HTML5-like canvas interaction (this includes following the canvas instructions to install Cairo, too.)
  • Using upng-js for PNG encoding/decoding.
  • Using pako for zlib-like inflation/deflation.