Skip to main content

Connect PgSTAC and TiTiler.

Project description

Connect PgSTAC and TiTiler.

Test Coverage Package version License


Documentation: https://stac-utils.github.io/titiler-pgstac/

Source Code: https://github.com/stac-utils/titiler-pgstac


TiTiler-PgSTAC is a TiTiler extension that connects to a PgSTAC database to create dynamic mosaics based on search queries.

Installation

To install from PyPI and run:

# Make sure to have pip up to date
$ python -m pip install -U pip

# Install `psycopg` or `psycopg["binary"]` or `psycopg["c"]`
$ python -m pip install psycopg["binary"]

$ python -m pip install titiler.pgstac

To install from sources and run for development:

$ git clone https://github.com/stac-utils/titiler-pgstac.git
$ cd titiler-pgstac
$ python -m pip install -e .

PgSTAC version

titiler.pgstac depends on pgstac >=0.3.4 (https://github.com/stac-utils/pgstac/blob/main/CHANGELOG.md#v034).

psycopg requirement

titiler.pgstac depends on the psycopg library. Because there are three ways of installing this package (psycopg or , psycopg["c"], psycopg["binary"]), the user must install this separately from titiler.pgstac.

  • psycopg: no wheel, pure python implementation. It requires the libpq installed in the system.
  • psycopg["binary"]: binary wheel distribution (shipped with libpq) of the psycopg package and is simpler for development. It requires development packages installed on the client machine.
  • psycopg["c"]: a C (faster) implementation of the libpq wrapper. It requires the libpq installed in the system.

psycopg[c] or psycopg are generally recommended for production use.

In titiler.pgstac setup.py, we have added three options to let users choose which psycopg install to use:

  • pip install titiler.pgstac["psycopg"]: pure python
  • pip install titiler.pgstac["psycopg-c"]: use the C wrapper (requires development packages installed on the client machine)
  • pip install titiler.pgstac["psycopg-binary"]: binary wheels

Launch

You'll need to have POSTGRES_USER, POSTGRES_PASS, POSTGRES_DBNAME, POSTGRES_HOST, POSTGRES_PORT variables set in your environment pointing to your Postgres database where pgstac has been installed.

export POSTGRES_USER=username
export POSTGRES_PASS=password
export POSTGRES_DBNAME=postgis
export POSTGRES_HOST=database
export POSTGRES_PORT=5432
$ pip install uvicorn
$ uvicorn titiler.pgstac.main:app --reload

Using Docker

$ git clone https://github.com/stac-utils/titiler-pgstac.git
$ cd titiler-pgstac
$ docker-compose up --build tiler

It runs titiler.pgstac using Gunicorn web server. To run Uvicorn based version:

$ docker-compose up --build tiler-uvicorn

Contribution & Development

See CONTRIBUTING.md

License

See LICENSE

Authors

See contributors for a listing of individual contributors.

Changes

See CHANGES.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

titiler.pgstac-1.0.0a4.tar.gz (32.2 kB view details)

Uploaded Source

Built Distribution

titiler.pgstac-1.0.0a4-py3-none-any.whl (35.7 kB view details)

Uploaded Python 3

File details

Details for the file titiler.pgstac-1.0.0a4.tar.gz.

File metadata

  • Download URL: titiler.pgstac-1.0.0a4.tar.gz
  • Upload date:
  • Size: 32.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.13

File hashes

Hashes for titiler.pgstac-1.0.0a4.tar.gz
Algorithm Hash digest
SHA256 ab66b6306e932f2464aa78caf4826254eb2fb98768a36ba3fd741b8b2376ee45
MD5 d16d7de4bb30c7db008d0f0100a12324
BLAKE2b-256 1062aa40707a1c4b89e346722460ae4904925e03b03158e6e882a0d97b78c797

See more details on using hashes here.

File details

Details for the file titiler.pgstac-1.0.0a4-py3-none-any.whl.

File metadata

File hashes

Hashes for titiler.pgstac-1.0.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 1942a74fa5dd6eec6e683a350d4b6d8d95722c0ee25de1c90f0c63803502b80b
MD5 5521e5084d83f34a69535fe57c248779
BLAKE2b-256 93813dba3e64a60090cd89102a963a9e671e7dacc6d331467fcc4a8e5863a498

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page