{"id":13858890,"url":"https://github.com/t-rex-tileserver/t-rex","last_synced_at":"2025-07-14T01:32:09.455Z","repository":{"id":41967202,"uuid":"58957660","full_name":"t-rex-tileserver/t-rex","owner":"t-rex-tileserver","description":"t-rex is a vector tile server specialized on publishing MVT tiles from your own data","archived":false,"fork":false,"pushed_at":"2024-02-26T19:26:22.000Z","size":16982,"stargazers_count":541,"open_issues_count":52,"forks_count":66,"subscribers_count":25,"default_branch":"master","last_synced_at":"2024-05-18T22:52:54.523Z","etag":null,"topics":["database","mapbox-gl-js","openlayers","tile-cache","vector-tiles"],"latest_commit_sha":null,"homepage":"https://t-rex.tileserver.ch/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/t-rex-tileserver.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-05-16T18:41:24.000Z","updated_at":"2024-07-12T00:49:49.204Z","dependencies_parsed_at":"2024-02-26T20:34:57.938Z","dependency_job_id":"394eb03f-9b89-4349-8ff5-c9b30fc7bdda","html_url":"https://github.com/t-rex-tileserver/t-rex","commit_stats":{"total_commits":685,"total_committers":26,"mean_commits":"26.346153846153847","dds":"0.11678832116788318","last_synced_commit":"6d6de368bca82ac5a03401ad9218b18294a960f2"},"previous_names":[],"tags_count":75,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t-rex-tileserver%2Ft-rex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t-rex-tileserver%2Ft-rex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t-rex-tileserver%2Ft-rex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/t-rex-tileserver%2Ft-rex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/t-rex-tileserver","download_url":"https://codeload.github.com/t-rex-tileserver/t-rex/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225938710,"owners_count":17548537,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","mapbox-gl-js","openlayers","tile-cache","vector-tiles"],"created_at":"2024-08-05T03:02:24.628Z","updated_at":"2024-11-22T17:30:31.018Z","avatar_url":"https://github.com/t-rex-tileserver.png","language":"Rust","funding_links":[],"categories":["Rust","database"],"sub_categories":[],"readme":"\u003e **Deprecation notice**: This software is not maintained anymore. It is replaced by [bbox-tile-server](https://www.bbox.earth/docs/tile-server/).\n\u003e See the [t-rex migration guide](https://www.bbox.earth/docs/tile-server/guides/#migration-from-t-rex) for migrating projects.\n\nt-rex\n=====\n\n[![CI build status](https://github.com/t-rex-tileserver/t-rex/workflows/CI/badge.svg)](https://github.com/t-rex-tileserver/t-rex/actions)\n[![Language (Rust)](https://img.shields.io/badge/powered_by-Rust-blue.svg)](http://www.rust-lang.org/)\n[![Discord Chat](https://img.shields.io/discord/598002550221963289.svg)](https://discord.gg/Fp2aape)\n[![docker](https://img.shields.io/docker/v/sourcepole/t-rex?label=Docker%20image\u0026sort=semver)](https://hub.docker.com/r/sourcepole/t-rex)\n\n\nt-rex is a vector tile server specialized on publishing [MVT tiles](https://github.com/mapbox/vector-tile-spec/tree/master/2.1)\nfrom your own data.\n\n\nFeatures\n--------\n\n* Support for PostGIS databases and GDAL vector formats\n* Auto-detection of layers in data source\n* Built-in viewers for data display and inspection\n* Tile generation command with simple parallelization\n* Automatic reprojection to grid CRS\n* Support for custom tile grids\n\n\n### Presentations\n\n* T-rex, a vector tile server for your own data ([FOSS4G 2017](http://2017.foss4g.org/)): [slides](https://t-rex.tileserver.ch/Vector-tiles-and-QGIS.pdf)\n* Vector Tiles - Introduction \u0026 Usage with QGIS (User meeting Bern 21.6.17): [slides](https://t-rex.tileserver.ch/Vector-tiles-and-QGIS.pdf)\n* Von WMS zu WMTS zu Vektor-Tiles ([FOSSGIS 2017](https://www.fossgis-konferenz.de/2017/programm/event.php?id=5233)): [Video](https://av.tib.eu/media/30549)\n* Workshop \"Vector Tiles\" (GEOSummit Bern 7.6.16): [slides](https://t-rex.tileserver.ch/t-rex_vector_tile_server.pdf)\n\n\n### Examples\n\n* [basemap.de](https://basemap.de/web-vektor/)\n* Swiss Ornithological Institute, [Birds of Switzerland](https://www.vogelwarte.ch/en/birds/birds-of-switzerland/)\n\n\nUsage\n-----\n\n* [Setup](https://t-rex.tileserver.ch/doc/setup/)\n* [Serving vector tiles](https://t-rex.tileserver.ch/doc/serve/)\n* [Generating vector tiles](https://t-rex.tileserver.ch/doc/generate/)\n* [Configuration](https://t-rex.tileserver.ch/doc/configuration/)\n\n\nQuick tour\n----------\n\n    t_rex serve --dbconn postgresql://user:pass@localhost/osm2vectortiles\n\nTiles are then served at `http://localhost:6767/{layer}/{z}/{x}/{y}.pbf`\n\nA list of all detected layers is available at [http://localhost:6767/](http://localhost:6767/)\n\nUse a tile cache:\n\n    t_rex serve --dbconn postgresql://user:pass@localhost/osm2vectortiles --cache /tmp/mvtcache\n\nGenerate a configuration template:\n\n    t_rex genconfig --dbconn postgresql://user:pass@localhost/osm2vectortiles | tee osm2vectortiles.toml\n\nRun server with configuration file:\n\n    t_rex serve --config osm2vectortiles.toml\n\nGenerate tiles for cache:\n\n    t_rex generate --config osm2vectortiles.toml\n\nIncrease log level:\n\n    t_rex serve --loglevel debug --dbconn postgresql://user:pass@localhost/osm2vectortiles\n\n\n\nFor developers\n--------------\n\nt-rex is written in [Rust](https://www.rust-lang.org/). Minimal required rustc version is 1.45.\n\n\n### Software Requirements\n\nUbuntu 20.04 (Focal Fossa):\n\n    sudo apt install cargo libssl-dev libgdal-dev clang\n\n### Build and run\n\nBuild:\n\n    cargo build\n\nRun tests:\n\n    cargo test --all\n\nRun server with DB [connection](https://github.com/sfackler/rust-postgres/tree/postgres-v0.15.2#connecting):\n\n    cargo run -- serve --dbconn postgresql://t_rex:t_rex@127.0.0.1:5439/t_rex_tests\n\nDecode a vector tile:\n\n    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\n\n\n### Database tests\n\nUnit tests which need a PostgreSQL connection are ignored by default.\n\nStart Test DB:\n\n    docker run -p 127.0.0.1:5439:5432 -d --name trextestdb --rm sourcepole/trextestdb\n\nTo run the database tests, declare the connection in an environment variable `DBCONN`:\n\n    export DBCONN=postgresql://t_rex:t_rex@127.0.0.1:5439/t_rex_tests\n\nRun the tests with\n\n    cargo test --all -- --ignored\n\nCreating test database locally:\n\n    # Set Postgresql environment variables when needed: PGHOST, PGPORT, PGUSER, PGPASSWORD\n    cd data\n    make createdb loaddata\n\n### S3 tests\n\nUnit tests which need a S3 connection are skipped by default.\n\nInstall [MinIO Client](https://github.com/minio/mc).\n\nStart Test S3\n\n    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 \u0026\u0026 sleep 5 \u0026\u0026 mc config host add local-docker http://localhost:9000 miniostorage miniostorage \u0026\u0026 mc mb local-docker/trex \u0026\u0026 mc policy set download local-docker/trex\n\nTo run the S3 tests, declare that there is a S3 available in an environment vaiable `S3TEST`:\n\n    export S3TEST=true\n\nRun the tests with\n\n    cargo test --all-features --all -- --ignored\n\nLicense\n-------\n\nt-rex is released under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft-rex-tileserver%2Ft-rex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ft-rex-tileserver%2Ft-rex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ft-rex-tileserver%2Ft-rex/lists"}