sia
pbf
Our great sponsors
sia | pbf | |
---|---|---|
1 | 3 | |
121 | 756 | |
- | 0.0% | |
2.5 | 0.0 | |
2 days ago | over 1 year ago | |
JavaScript | JavaScript | |
Apache License 2.0 | 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.
sia
-
Clio: extremely fast, multi-threaded code on the browser
Prior to version v0.11.0, Clio used JSON for serialization. JSON is available everywhere and it’s fairly fast, so at first, it might sound like a good idea to go with JSON. Unfortunately, as soon as we start serializing custom types with JSON, its performance degrades to the point that it’s not efficient anymore. To solve this issue, I created a serialization library for JavaScript named Sia, and to boost its serialization performance to the next level, I also designed a new text encoding which I called utfz. I spent over a year optimizing these two libraries, and as a result, managed to make Sia so fast that the pure JavaScript version of it beats even the performance of the native serialization libraries available for Node.js!
pbf
-
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)
What are some alternatives?
protobuf - Protocol Buffers for JavaScript (& TypeScript).
clio - Clio is a functional, parallel, distributed programming language.
img-encode - Encode an image to sound and view it as a spectrogram - turn your images into music
deno-pbf - Deno pbf port of https://github.com/mapbox/pbf
fast-encoding - Fast, cross-platform, small and easy-to-use base64 and hex encoding.
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.
nominatim-docker - 100% working container for Nominatim
mbtileserver - Basic Go server for mbtiles
wat-compiler - webassembly wat text format to binary compiler
utfz - UTFZ, a UTF-16 compression library.
S2 geometry - S2 geometry library in Go
web-mercator-projection - A Go project to explore the math to calculate and present data in a map using the `Web Mercator Projection`