Skip to content

developmentseed/titiler

Repository files navigation

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 split into a set of python namespace packages: titiler.{package}.

Package Version Description
titiler.core titiler.core The Core package contains libraries to help create a dynamic tiler for COG and STAC
titiler.xarray titiler.xarray The xarray package contains libraries to help create a dynamic tiler for Zarr/NetCDF datasets
titiler.extensions titiler.extensions TiTiler's extensions package. Contains extensions for Tiler Factories.
titiler.mosaic titiler.mosaic The mosaic package contains libraries to help create a 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

To install from PyPI and run:

# Make sure you have pip up to date python -m pip install -U pip python -m pip install titiler.{package} # e.g., # python -m pip install titiler.core # python -m pip install titiler.xarray # python -m pip install titiler.extensions # python -m pip install titiler.mosaic # python -m pip install titiler.application (also installs core, extensions and mosaic) # Install uvicorn to run the FastAPI application locally python -m pip install uvicorn # Launch application locally uvicorn titiler.application.main:app

To install from sources and run for development:

git clone https://github.com/developmentseed/titiler.git cd titiler python -m pip install -U pip python -m pip install -e src/titiler/core -e src/titiler/xarray -e src/titiler/extensions -e src/titiler/mosaic -e src/titiler/application python -m pip install uvicorn uvicorn titiler.application.main:app --reload 

Docker

Ready to use/deploy images can be found on Github registry.

docker run \ --platform=linux/amd64 \ -p 8000:8000 \ --rm -it ghcr.io/developmentseed/titiler:latest \ uvicorn titiler.application.main:app --host 0.0.0.0 --port 8000 --workers 1
  • Built the docker locally
git clone https://github.com/developmentseed/titiler.git cd titiler docker compose up --build titiler 

Project structure

src/titiler/ - titiler modules. ├── application/ - Titiler's `Application` package ├── extensions/ - Titiler's `Extensions` package ├── xarray/ - Titiler's `Xarray` 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.