Skip to content
Projets

t-rex-tileserver/t-rex has 578 GitHub stars and 72 forks. GitHot measured 0 stars in 24 hours and +1 in 7 days. Last checked 2026-11-11 19:17 UTC. Last push 2024-09-24.

Comment ces chiffres sont mesurés

t-rex is a vector tile server specialized on publishing MVT tiles from your own data

What you can do

  • Support for PostGIS databases and GDAL vector formats
  • Auto-detection of layers in data source
  • Built-in viewers for data display and inspection
  • Tile generation command with simple parallelization

Progression mesurée des étoiles

in 24h
0
in 7 days
+1
in 15 days
Historique en cours
in 1 month
Historique en cours

Variations nettes sur des périodes qui se chevauchent, pas des totaux quotidiens. Les mesures absentes restent vides. Les étoiles indiquent l’intérêt, pas la qualité.

README.md

Original

Deprecation notice: This software is not maintained anymore. It is replaced by bbox-tile-server. See the t-rex migration guide for migrating projects.

t-rex

CI build status Language (Rust) Discord Chat docker

t-rex is a vector tile server specialized on publishing MVT tiles from your own data.

Features

  • Support for PostGIS databases and GDAL vector formats
  • Auto-detection of layers in data source
  • Built-in viewers for data display and inspection
  • Tile generation command with simple parallelization
  • Automatic reprojection to grid CRS
  • Support for custom tile grids

Presentations

  • T-rex, a vector tile server for your own data (FOSS4G 2017): slides
  • Vector Tiles - Introduction & Usage with QGIS (User meeting Bern 21.6.17): slides
  • Von WMS zu WMTS zu Vektor-Tiles (FOSSGIS 2017): Video
  • Workshop "Vector Tiles" (GEOSummit Bern 7.6.16): slides

Examples

Usage

Quick tour

t_rex serve --dbconn postgresql://user:pass@localhost/osm2vectortiles

Tiles are then served at http://localhost:6767/{layer}/{z}/{x}/{y}.pbf

A list of all detected layers is available at http://localhost:6767/

Use a tile cache:

t_rex serve --dbconn postgresql://user:pass@localhost/osm2vectortiles --cache /tmp/mvtcache

Generate a configuration template:

t_rex genconfig --dbconn postgresql://user:pass@localhost/osm2vectortiles | tee osm2vectortiles.toml

Run server with configuration file:

t_rex serve --config osm2vectortiles.toml

Generate tiles for cache:

t_rex generate --config osm2vectortiles.toml

Increase log level:

t_rex serve --loglevel debug --dbconn postgresql://user:pass@localhost/osm2vectortiles

For developers

t-rex is written in Rust. Minimal required rustc version is 1.45.

Software Requirements

Ubuntu 20.04 (Focal Fossa):

sudo apt install cargo libssl-dev libgdal-dev clang

Build and run

Build:

cargo build

Run tests:

cargo test --all

Run server with DB connection:

cargo run -- serve --dbconn postgresql://t_rex:[email protected]:5439/t_rex_tests

Decode a vector tile:

curl --silent http://127.0.0.1:6767/ne_10m_populated_places/5/31/17.pbf | protoc --decode=vector_tile.Tile t-rex-core/src/mvt/vector_tile.proto

Database tests

Unit tests which need a PostgreSQL connection are ignored by default.

Start Test DB:

docker run -p 127.0.0.1:5439:5432 -d --name trextestdb --rm sourcepole/trextestdb

To run the database tests, declare the connection in an environment variable DBCONN:

export DBCONN=postgresql://t_rex:[email protected]:5439/t_rex_tests

Run the tests with

cargo test --all -- --ignored

Creating test database locally:

# Set Postgresql environment variables when needed: PGHOST, PGPORT, PGUSER, PGPASSWORD
cd data
make createdb loaddata

S3 tests

Unit tests which need a S3 connection are skipped by default.

Install MinIO Client.

Start Test S3

docker run -d --rm -p 9000:9000 -e MINIO_REGION_NAME=my-region -e MINIO_ACCESS_KEY=miniostorage -e MINIO_SECRET_KEY=miniostorage minio/minio server /data && sleep 5 && mc config host add local-docker http://localhost:9000 miniostorage miniostorage && mc mb local-docker/trex && mc policy set download local-docker/trex

To run the S3 tests, declare that there is a S3 available in an environment vaiable S3TEST:

export S3TEST=true

Run the tests with

cargo test --all-features --all -- --ignored

License

t-rex is released under the MIT License.

Explorer des projets similaires