A modern dynamic tile server built on top of FastAPI and Rasterio/GDAL.
Project description
A modern dynamic tile server built on top of FastAPI and Rasterio/GDAL.
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
- Built on top of FastAPI
- Cloud Optimized GeoTIFF support
- SpatioTemporal Asset Catalog support
- Multiple projections support (see TileMatrixSets) via
morecantile
. - JPEG / JP2 / PNG / WEBP / GTIFF / NumpyTile output format support
- OGC WMTS support
- Automatic OpenAPI documentation (FastAPI builtin)
- Virtual mosaic support (via MosaicJSON)
- Example of AWS Lambda / ECS deployment (via CDK)
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 | The Core package contains libraries to help create a dynamic tiler for COG and STAC |
|
titiler.mosaic | The mosaic package contains libraries to help create a dynamic tiler for MosaicJSON (adds cogeo-mosaic requirement) |
|
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:
$ pip install -U pip
$ pip install uvicorn
$ pip install titiler.{package}
# e.g.,
# pip install titiler.core
# pip install titiler.mosaic
# pip install titiler.application (also installs core and mosaic)
$ uvicorn titiler.application.main:app
To install from sources and run for development:
$ git clone https://github.com/developmentseed/titiler.git
$ cd titiler
$ pip install -e src/titiler/core -e src/titiler/mosaic -e src/titiler/application
$ pip install uvicorn
$ uvicorn titiler.application.main:app --reload
Docker
Ready to use/deploy images can be found on Github registry.
docker run --name titiler \
-p 8000:8000 \
--env PORT=8000 \
--env WORKERS_PER_CORE=1 \
--rm -it ghcr.io/developmentseed/titiler:latest
- Built the docker locally
$ git clone https://github.com/developmentseed/titiler.git
$ cd titiler
$ docker-compose up --build titiler # or titiler-uvicorn
Some options can be set via environment variables, see: https://github.com/tiangolo/uvicorn-gunicorn-docker#advanced-usage
Project structure
src/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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file titiler-0.4.1.tar.gz
.
File metadata
- Download URL: titiler-0.4.1.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35aee398251c5ccd1a69408a9a98410b969dafde5b66e045428ac3082dd5c537 |
|
MD5 | 64fa98fac36044059175f8b09ec7d1c5 |
|
BLAKE2b-256 | 22f8fe8d69bda2dfb316d7185ca9c05163ef0e22545beb894af709ce4cd49f43 |