ld
S2 geometry
Our great sponsors
ld | S2 geometry | |
---|---|---|
6 | 4 | |
20 | 1,634 | |
- | 0.7% | |
0.0 | 2.0 | |
over 1 year ago | 9 months ago | |
Go | Go | |
The Unlicense | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ld
-
Using a httputil reverse proxy to host gRPC REST & static web content (eg HTML) on a single port
I slammed together a database based on this wire protocol feature: MikkelHJuul/ld the database serve bytes, the client can deserialize those by replacing the bytes with a message (in the proto-file)
-
A dead simple Key-value Storage API
Hell, I even built a kv-database myself that I just announced some weeks ago, based on badgerDB: ld. It's API is the api I would say qualifies as a simple actual kv database api. KeyRange { String prefix, from, to, pattern (pattern may be a bit over the top) } The database is value agnostic
-
Protobuf Database: ld & ld-client: interactive client
[ld:0.1.3](https://github.com/MikkelHJuul/ld) is out
-
ld - 0.1.1: protocol buffers database
Just after pushing 'Post'; I thought to my self: I haven't done nearly enough testing! This is release [0.1.1](https://github.com/MikkelHJuul/ld/pull/2) focusing on testing, I fixed some bugfixes with the `Iterator` in `impl/iterator.go`, but mostly I added 50-some tests spanning 900 lines of test code.
-
Protocol buffers database, a Key-Value database on the wire
I got my database into a release candidate: ld - a protocol buffers database
-
gRPC bytes
The obvious use case is the one of a key value database: I have an older personal project I wanted to do this for, ld (yes I know there is a c linker called ld) basically the client implements their proto file saving whatever they wanted at a given key and the database never touch the bytes, it servers back those bytes which should be re-serialisable to the same object. (The project is semi abandoned, I hope to use badger or boltdb to implement it some time)
S2 geometry
-
I wrote a package to compute the distance between two geographic latitude, longitude coordinates
I could be mistaken, but https://github.com/golang/geo does it already...
-
Get Coordinates Within Maps Bound Box
s2 a geo library from google can do exactly that, and has an implementation in Go. https://github.com/golang/geo
- Looking for a library to perform boolean operations on polygons
-
Protocol buffers database, a Key-Value database on the wire
There's a Java port and bindings for Python. The go port has been a work in progress for a while and the claimed to be at about 40% done. There's a rust port but it is based off of the go port and thus not complete either.
What are some alternatives?
protoc-gen-star - protoc plugin library for efficient proto-based code generation
h3 - Hexagonal hierarchical geospatial indexing system
social - social network in GRPC, Go, mysql, and vuejs,
S2 geojson - Draw a polygon on the map or paste a geoJSON and explore how the s2.RegionCoverer covers it with S2 cells depending on the min and max levels
sled - the champagne of beta embedded databases
h3-go - Go bindings for H3, a hierarchical hexagonal geospatial indexing system
Jet - A key-value db api with multiple storage engines and key generation
osm - General purpose library for reading, writing and working with OpenStreetMap data
s2geometry - Computational geometry and spatial indexing on the sphere
mbtileserver - Basic Go server for mbtiles
redix - a very simple pure key => value storage system that speaks Redis protocol with Postgres as storage engine and more
simplefeatures - Simple Features is a pure Go Implementation of the OpenGIS Simple Feature Access Specification