Skip to main content

Simple and Fast Geospatial OGC Features and Tiles API for PostGIS.

Project description

Simple and Fast Geospatial OGC Features and Tiles API for PostGIS.

Test Coverage Package version License


Documentation: https://developmentseed.org/tipg/

Source Code: https://github.com/developmentseed/tipg


tipg, pronounced T[ee]pg, is a python package which helps creating lightweight OGC Features and Tiles API with PostGIS Database backend. The API has been designed with respect to OGC Features and OGC Tiles specifications.

Note This project is the result of the merge between tifeatures and timvt.

Install

$ python -m pip install pip -U
$ python -m pip install tipg

# or from source
$ git clone https://github.com/developmentseed/tipg.git
$ cd tipg
$ python -m pip install -e .

OGC Specifications

Specification Status link
OGC Common Part 1: Core https://docs.ogc.org/DRAFTS/19-072.html
OGC Common Part 2: Geospatial Data http://docs.ogc.org/DRAFTS/20-024.html
OGC Features Part 1: Core https://docs.ogc.org/is/17-069r4/17-069r4.html
OGC Features Part 2: CRS by Reference https://docs.ogc.org/is/18-058r1/18-058r1.html
OGC Features Part 3: Filtering / CQL2 https://docs.ogc.org/DRAFTS/19-079r1.html
OGC Tiles Part 1: Core https://docs.ogc.org/is/20-057/20-057.html

Notes:

The project authors choose not to implement the Part 2 of the specification to avoid the introduction of CRS based GeoJSON. This might change in the future.

While the authors tried to follow OGC specifications to the letter, some API endpoints might have more capabilities (e.g geometry column selection).

PostGIS/PostgreSQL

tipg rely a lot of ST_* PostGIS functions. You need to make sure your PostgreSQL database has PostGIS installed.

SELECT name, default_version,installed_version
FROM pg_available_extensions WHERE name LIKE 'postgis%' or name LIKE 'address%';
CREATE EXTENSION postgis;

Configuration

To be able to work, the application will need access to the database. tipg uses starlette's configuration pattern which make use of environment variable and/or .env file to pass variable to the application.

Example of .env file can be found in .env.example

# you need define the DATABASE_URL directly
DATABASE_URL=postgresql://username:password@0.0.0.0:5432/postgis

More info about configuration options in https://developmentseed.org/tipg/advanced/configuration/

Launch

$ pip install uvicorn

# Set your postgis database instance URL in the environment
$ export DATABASE_URL=postgresql://username:password@0.0.0.0:5432/postgis
$ uvicorn tipg.main:app

# or using Docker

$ docker-compose up app

Contribution & Development

See CONTRIBUTING.md

License

See LICENSE

Authors

Created by Development Seed

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

tipg-0.4.3.tar.gz (55.1 kB view details)

Uploaded Source

Built Distribution

tipg-0.4.3-py3-none-any.whl (67.1 kB view details)

Uploaded Python 3

File details

Details for the file tipg-0.4.3.tar.gz.

File metadata

  • Download URL: tipg-0.4.3.tar.gz
  • Upload date:
  • Size: 55.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.24.1

File hashes

Hashes for tipg-0.4.3.tar.gz
Algorithm Hash digest
SHA256 42eb55a4026bc0428beb2955958885b8f36e5abb70524c7c286331322f6f3444
MD5 f17c6d67e86c214a9898d67fc1445963
BLAKE2b-256 ff7f28f5010168c2bd2ac5539fd8a2b3e0abe068e962f51a16f3ab8e88005b19

See more details on using hashes here.

File details

Details for the file tipg-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: tipg-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 67.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.24.1

File hashes

Hashes for tipg-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d1c17f2fd70ed8812a46320f5314260a72099c90b74c430aee71af4c137d5f1a
MD5 d9d3a9b8bed0cfa7a1bfc049bc6d12c2
BLAKE2b-256 2eb68680b3d59c82166dc38a3d650bbed71588349f93e4012f609f18aec6d6e9

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