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 lightweight application (FastAPI) focused on creating web map tiles dynamically from Cloud Optimized GeoTIFF, STAC or MosaicJSON.
Note: This project is the descendant of cogeo-tiler
and cogeo-mosaic-tiler
.
- Cloud Optimized GeoTIFF support
- SpatioTemporal Asset Catalog support
- Virtual mosaic support (via MosaicJSON)
- Multiple projections (see TileMatrixSets) via
morecantile
. - JPEG / JP2 / PNG / WEBP / GTIFF / NumpyTile output format support
- OGC WMTS support
- Automatic OpenAPI documentation (FastAPI builtin)
- Example of AWS Lambda / ECS deployment (via CDK)
$ pip install -U pip
# From Pypi
$ pip install titiler
# Or from sources
$ git clone https://github.com/developmentseed/titiler.git
$ cd titiler && pip install -e .
Launch Application
$ uvicorn titiler.main:app --reload
Or with Docker
$ 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
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
Some options can be set via environment variables, see: https://github.com/tiangolo/uvicorn-gunicorn-docker#advanced-usage
titiler/ - titiler python module.
├── custom/ - Custom colormap and TMS grids.
├── endpoints - API routes.
│ ├── cog.py - COG related endpoints.
│ ├── stac.py - STAC related endpoints.
│ ├── mosaic.py - MosaicJSON related endpoints.
│ ├── factory.py - TiTiler Router Factories.
│ └── tms.py - TileMatrixSets endpoints.
├── models/ - pydantic models for this application.
├── resources/ - application resources (enums, constants, etc.).
├── templates/ - html/xml models.
├── middleware.py - Custom Starlette middlewares.
├── dependencies.py - API dependencies.
├── errors.py - API custom error handling.
├── main.py - FastAPI application creation and configuration.
├── settings.py - application configuration.
└── utils.py - utility functions.
See CONTRIBUTING.md
See LICENSE
Created by Development Seed
See contributors for a listing of individual contributors.
See CHANGES.md.