Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/developmentseed/titiler
Build your own Raster dynamic map tile services
https://github.com/developmentseed/titiler
aws-cdk aws-lambda cog cogeotiff dynamic fastapi gdal map-tile-server map-tiles mosaicjson raster rasterio rest server stac tile
Last synced: 4 days ago
JSON representation
Build your own Raster dynamic map tile services
- Host: GitHub
- URL: https://github.com/developmentseed/titiler
- Owner: developmentseed
- License: mit
- Created: 2019-06-28T16:54:56.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-01-24T12:55:13.000Z (9 days ago)
- Last Synced: 2025-01-27T18:54:32.201Z (6 days ago)
- Topics: aws-cdk, aws-lambda, cog, cogeotiff, dynamic, fastapi, gdal, map-tile-server, map-tiles, mosaicjson, raster, rasterio, rest, server, stac, tile
- Language: Python
- Homepage: https://developmentseed.org/titiler/
- Size: 47.6 MB
- Stars: 823
- Watchers: 18
- Forks: 179
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-earthobservation-code - titiler - A modern dynamic tile server built on top of `FastAPI` and `Rasterio/GDAL`. (`Python` processing of optical imagery (non deep learning) / Cloud Native Geospatial)
- awesome-fastapi - :octocat: titiler :star: 300+ :fork_and_knife: 80+ - Build your own Raster dynamic map tile services. (APIs)
README
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`](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).
- MultiDimensional dataset support via [Xarray](https://github.com/pydata/xarray)
- JPEG / JP2 / PNG / WEBP / GTIFF / NumpyTile output format support
- OGC WMTS support
- Automatic OpenAPI documentation (FastAPI builtin)
- Virtual mosaic support (via [MosaicJSON](https://github.com/developmentseed/mosaicjson-spec/))
- 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**](https://github.com/developmentseed/titiler/tree/main/src/titiler/core) | [![titiler.core](https://img.shields.io/pypi/v/titiler.core?color=%2334D058&label=pypi)](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) | [![titiler.xarray](https://img.shields.io/pypi/v/titiler.xarray?color=%2334D058&label=pypi)](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) | [![titiler.extensions](https://img.shields.io/pypi/v/titiler.extensions?color=%2334D058&label=pypi)](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) | [![titiler.mosaic](https://img.shields.io/pypi/v/titiler.mosaic?color=%2334D058&label=pypi)](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) | [![titiler.application](https://img.shields.io/pypi/v/titiler.application?color=%2334D058&label=pypi)](https://pypi.org/project/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:
```bash
# Make sure you have pip up to date
python -m pip install -U pippython -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 titilerpython -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 uvicornuvicorn 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 titilerdocker 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]()
See [contributors](https://github.com/developmentseed/titiler/graphs/contributors) for a listing of individual contributors.
## Changes
See [CHANGES.md](https://github.com/developmentseed/titiler/blob/main/CHANGES.md).