This project has been archived by its maintainers, and is no longer receiving any updates.
⚠️⚠️⚠️ The titiler metadata python package has been deprecated in favor of submodules under the titiler-* namespace. Please install the package(s) you need from PyPI:
titiler.coretitiler.xarraytitiler.extensionstitiler.mosaictitiler.application(also installs core, extensions, mosaic and xarray)
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. - MultiDimensional dataset support via Xarray
- 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.xarray | The xarray package contains libraries to help create a dynamic tiler for Zarr/NetCDF datasets |
|
| titiler.extensions | TiTiler's extensions package. Contains extensions for Tiler Factories. | |
| 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:
# 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
uv sync
uv run pip install uvicorn
uv run 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.
Release files for titiler 0.25.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| titiler-0.25.0.tar.gz | 7.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| titiler-0.25.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 12.6 kB
Release files / titiler-0.25.0.tar.gz
| Download URL | titiler-0.25.0.tar.gz |
|---|---|
| Size | 7.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
28e77050afa515121ddaa02d34275b76ced54c923a32a22510bc5f8a4ae7a761
|
|
BLAKE2b-256 checksum How to use checksums |
3c63f3c82d2bfa4315a7ef90199a1073e80fd1be448a9c35911aec2c80b26ae7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / titiler-0.25.0-py3-none-any.whl
| Download URL | titiler-0.25.0-py3-none-any.whl |
|---|---|
| Size | 4.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4f2f77a82b6fcf5f1c914e780070629ff50627a574e92b6f76762d58ddc9b44c
|
|
BLAKE2b-256 checksum How to use checksums |
8ac728645b76210c336905cb2e4758ec1a2d0e4441edf12bdb82b17190b59e00
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.1 {"installer":{"name":"uv","version":"0.11.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|