Awesome Open Source
Awesome Open Source

A modern dynamic tile server built on top of FastAPI and Rasterio/GDAL.

Test Coverage Package version Downloads Downloads Docker


Documentation: https://devseed.com/titiler/

Source Code: https://github.com/developmentseed/titiler


Titiler, pronounced tee-tiler (ti is the diminutive version of the french petit which means small), is a set of python modules that focus on creating FastAPI application for dynamic tiling.

Note: This project is the descendant of cogeo-tiler and cogeo-mosaic-tiler.

Features

Packages

Starting with version 0.3.0, the TiTiler python module has been splitted into a set of python namespace packages: titiler.{package}.

Package Version Description
titiler.core titiler.core The Core package contains libraries to help creating dynamic tiler for COG and STAC
titiler.mosaic titiler.mosaic The mosaic package contains libraries to help creating dynamic tiler for MosaicJSON (adds cogeo-mosaic requirement)
titiler.application titiler.application TiTiler's demo package. Contains a FastAPI application with full support of COG, STAC and MosaicJSON

Installation

$ pip install -U pip

# From Pypi
$ pip install titiler.{package}
# e.g
# pip install titiler.core
# pip install titiler.mosaic
# pip install titiler.application

# Or from sources
$ git clone https://github.com/developmentseed/titiler.git
$ cd titiler && pip install -e titiler/core titiler/mosaic titiler/application

Docker

Ready to use/deploy images can be found on Docker Hub and AWS public ECR registery.

docker run --name titiler \
    -p 8000:8000 \
    --env PORT=8000 \
    --env WORKERS_PER_CORE=1 \
    --rm -it developmentseed/titiler
docker run --name titiler \
    -p 8000:8000 \
    --env PORT=8000 \
    --env WORKERS_PER_CORE=1 \
    --rm -it public.ecr.aws/developmentseed/titiler
  • Built the docker locally
$ git clone https://github.com/developmentseed/titiler.git
$ cd titiler

$ export AWS_ACCESS_KEY_ID=...
$ export AWS_SECRET_ACCESS_KEY=...
$ docker-compose build
$ docker-compose up

Some options can be set via environment variables, see: https://github.com/tiangolo/uvicorn-gunicorn-docker#advanced-usage

Project structure

titiler/                         - titiler modules.
 ├── application/                - Titiler's `Application` package
 ├── core/                       - Titiler's `Core` package
 └── mosaic/                     - Titiler's `Mosaic` package

Contribution & Development

See CONTRIBUTING.md

License

See LICENSE

Authors

Created by Development Seed

See contributors for a listing of individual contributors.

Changes

See CHANGES.md.


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
python (53,198
server (525
rest (487
aws-lambda (314
dynamic (118
fastapi (66
raster (33
tile (29
gdal (20
cog (17
aws-cdk (17