The Gun database, in Rust. Gun is an open source cybersecurity protocol for syncing decentralized graph data.
You can find out more about the original JavaScript implementation here: https://gun.eco/docs/.
We are working on rewriting the protocol in Rust following the information here and the guidance of Mark, the creator of Gun.
If you are interested in joining the development team please join our Discord: https://discord.gg/t4CMVJ2Bge.
While the version is “0.*” the port might align towards exploratory programming and rapid prototyping. Performance Testing Speed Development is welcome, but at this stage it is okay to have performance gaps and regressions in the code
Also, no semver
for now. API will stabilize when we're happy with how GUN works in the Linux kernel and WASM, how pluggable architecture is organized, and go through a number of performance optimizations
The project is using non_ascii_idents
and other such Nightly features. Presently tested on nightly-2020-11-20
The project will be developed as no_std
to ensure maximum portability (kernels, WASM, blockchains, hardware, etc).
Out of the box we likely lack the no_std
encryption facilities necessary to run this in Linux kernel and WASM, but we might use c2rust
in the future to bridge that gap.
I (@ArtemGr) prefer to see myself as a maintainer, consolidating a community effort towards exploring Gun, porting it and then improving the port.
To that end I will be playing with forward tasks/issues and listing them on Reddit maybe, Bountysource and This Week In Rust.
I'd welcome guidance in that.