pbf
grpc
Our great sponsors
pbf | grpc | |
---|---|---|
4 | 1 | |
763 | 6 | |
0.9% | - | |
0.0 | 0.0 | |
over 1 year ago | 7 months ago | |
JavaScript | Go | |
BSD 3-clause "New" or "Revised" License | - |
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.
pbf
-
Parquet-WASM: Rust-based WebAssembly bindings to read and write Parquet data
it's been about 3 years, but in Grafana at the time we were using something like ArrowJS + Arrow Flight + protobuf.js and then render the datasets into dashboards on Canvas, especially for streaming at ~20hz.
when i benchmarked the fastest lib to simply convert the protobuf decode (https://github.com/mapbox/pbf), it was 5x slower than native JSON parsing in browsers for dataframe-like structures (e.g. a few dozen 2k-long arrays of floats).
-
Outperform Protobuf.js with fixed-size encoding
does it beat https://github.com/mapbox/pbf ?
-
Protobuf-ES: The Protocol Buffers TypeScript/JavaScript runtime we all deserve
at least in the frontend (without WASM), it depends.
i tested https://github.com/mapbox/pbf and while it was faster for deep/complex structs vs an unoptimized/repetative JSON blob, it was slower at shallow structs and flat arrays of stuff. if you spend a bit of time encode stuff as flat arrays to avoid mem alloc, JSON parsing wins by a lot since it goes through highly optimized C or assembly, while decoding protobuf in the JIT does not.
-
A standalone protobuf to typescript(for deno) code generator
The runtime is taken from mapbox/pbf (with basic type definitions)
grpc
-
Protobuf-ES: The Protocol Buffers TypeScript/JavaScript runtime we all deserve
I prefer reading proto files with services over OpenAPI yaml. Here's the pet store example to compare.
- https://github.com/project-flogo/grpc/blob/master/proto/grpc...
- https://github.com/OAI/OpenAPI-Specification/blob/main/examp...
What are some alternatives?
protobuf - Protocol Buffers for JavaScript (& TypeScript).
protoc-gen-validate - Protocol Buffer Validation - Being replaced by github.com/bufbuild/protovalidate
sia - Sia - Binary serialisation and deserialisation
connect-es - The TypeScript implementation of Connect: Protobuf RPC that works.
deno-pbf - Deno pbf port of https://github.com/mapbox/pbf
flatbush - A very fast static spatial index for 2D points and rectangles in JavaScript 🌱
osm - Open Service Mesh (OSM) is a lightweight, extensible, cloud native service mesh that allows users to uniformly manage, secure, and get out-of-the-box observability features for highly dynamic microservice environments.
fast-encoding - Fast, cross-platform, small and easy-to-use base64 and hex encoding.
img-encode - Encode an image to sound and view it as a spectrogram - turn your images into music
nominatim-docker - 100% working container for Nominatim
mbtileserver - Basic Go server for mbtiles
S2 geometry - S2 geometry library in Go