https://github.com/asg017/sqlite-tg
SQLite extension around tg, a geometric library for limited GIS operations
https://github.com/asg017/sqlite-tg
sqlite sqlite-extension
Last synced: 22 days ago
JSON representation
SQLite extension around tg, a geometric library for limited GIS operations
- Host: GitHub
- URL: https://github.com/asg017/sqlite-tg
- Owner: asg017
- Created: 2023-09-23T06:11:32.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-01T22:48:10.000Z (about 2 months ago)
- Last Synced: 2025-03-24T13:08:59.573Z (about 1 month ago)
- Topics: sqlite, sqlite-extension
- Language: C
- Homepage:
- Size: 2.73 MB
- Stars: 43
- Watchers: 3
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# sqlite-tg
Work-in-progress geospatial SQLite extension around [tg](https://github.com/tidwall/tg). Not ready yet, but feel free to play with it!
Once stabilized, will be a part of [sqlite-ecosystem](https://github.com/asg017/sqlite-ecosystem).
## Usage
```sql
.load ./tg0select tg_point_wkt(1, 2);
-- 'POINT(1 2)'
```tg and therefore `sqlite-tg` support WKT, WKB, and GeoJSON. Most functions will accept any of these formats, and you can convert between them with [`tg_to_geojson()`](./docs.md#tg_to_geojson), [`tg_to_wkb()`](./docs.md#tg_to_wkb), and [`tg_to_wkt()`](./docs.md#tg_to_wkt).
```sql
select tg_to_geojson('POINT(1 2)');
-- '{"type":"Point","coordinates":[1,2]}'select tg_to_wkb('POINT(1 2)');
-- X'0101000000000000000000f03f0000000000000040'select tg_to_wkt('{"type":"Point","coordinates":[1,2]}');
-- 'POINT(1 2)'
```## Documentation
See [`docs.md`](./docs.md) for a full API reference.
## Installing
| Language | Install | |
| -------------- | -------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Python | `pip install sqlite-tg` | [](https://pypi.org/project/sqlite-tg/) |
| Datasette | `datasette install datasette-sqlite-tg` | [](https://datasette.io/plugins/datasette-sqlite-tg) |
| sqlite-utils | `sqlite-utils install sqlite-utils-sqlite-tg` | [](https://datasette.io/plugins/sqlite-utils-sqlite-tg) |
| Node.js | `npm install sqlite-tg` | [](https://www.npmjs.com/package/sqlite-tg) |
| Deno | [`deno.land/x/sqlite_tg`](https://deno.land/x/sqlite_tg) | [](https://deno.land/x/sqlite_tg) |
| Ruby | `gem install sqlite-tg` | [](https://rubygems.org/gems/sqlite-tg) |
| Github Release | |  |