A Happy Tiles factory.
--- **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`](https://github.com/developmentseed/cogeo-tiler) and [`cogeo-mosaic-tiler`](https://github.com/developmentseed/cogeo-mosaic-tiler). ## Features - Built on top of [FastAPI](https://fastapi.tiangolo.com) - [Cloud Optimized GeoTIFF](http://www.cogeo.org/) support - [SpatioTemporal Asset Catalog](https://stacspec.org) support - Multiple projections support (see [TileMatrixSets](https://www.ogc.org/standards/tms)) via [`morecantile`](https://github.com/developmentseed/morecantile). - Multi-Dimensional (Zarr) dataset support via [Xarray](https://github.com/pydata/xarray) - JPEG / JP2 / PNG / WEBP / GTIFF / NumpyTile output format support - OGC RESTful WMTS / OGC Tiles API support - Partial support of OGC Maps API - Automatic OpenAPI documentation (FastAPI builtin) - Virtual mosaic support (via [MosaicJSON](https://github.com/developmentseed/mosaicjson-spec/)) - Example of AWS Lambda / ECS deployment (via CDK) / K8s Helm chart ## 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**](https://github.com/developmentseed/titiler/tree/main/src/titiler/core) | [](https://pypi.org/project/titiler.core) | The `Core` package contains libraries to help create a dynamic tiler for COG and STAC [**titiler.xarray**](https://github.com/developmentseed/titiler/tree/main/src/titiler/xarray) | [](https://pypi.org/project/titiler.xarray) | The `xarray` package contains libraries to help create a dynamic tiler for Zarr/NetCDF datasets [**titiler.extensions**](https://github.com/developmentseed/titiler/tree/main/src/titiler/extensions) | [](https://pypi.org/project/titiler.extensions) | TiTiler's extensions package. Contains extensions for Tiler Factories. [**titiler.mosaic**](https://github.com/developmentseed/titiler/tree/main/src/titiler/mosaic) | [](https://pypi.org/project/titiler.mosaic) | The `mosaic` package contains libraries to help create a dynamic tiler for MosaicJSON (adds `cogeo-mosaic` requirement) [**titiler.application**](https://github.com/developmentseed/titiler/tree/main/src/titiler/application) | [](https://pypi.org/project/titiler.application) | TiTiler's `demo` package. Contains a FastAPI application with full support of COG, Zarr, STAC and MosaicJSON ## Installation > [!WARNING] > > Do not install the package named `titiler` from PyPI. > In late 2025, we [dropped support for this metapackage](https://github.com/developmentseed/titiler/pull/1244); > now you must install TiTiler from the package names shown below. To install from PyPI and run: ```bash # 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, xarray 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 --group server uv run uvicorn titiler.application.main:app --reload ``` ## Docker Ready to use/deploy images can be found on Github registry. - https://github.com/developmentseed/titiler/pkgs/container/titiler ```bash 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](https://github.com/developmentseed/titiler/blob/main/CONTRIBUTING.md) ## License See [LICENSE](https://github.com/developmentseed/titiler/blob/main/LICENSE) ## Authors Created by [Development Seed](