# About
RsNano is a Rust port of the original nano-node.
The original nano-node is written in C++. C++ is a very powerful language, but it makes it easy to introduce potentially exploitable bugs, like buffer overflows, dangling pointers, race conditions or integer overflows.
Rust, on the other hand, offers similar performance characteristics as C++, but guarantees memory safety and thread safety at compile time.
# Why Rust?
Performance
Rust is blazingly fast and offers comparable performance to C++ with no runtime or garbage collection.
This helps the Nano network continue to confirm transactions in well under 1 second.
Reliability
Rust guarantees memory-safety and thread safety. Many bugs are eliminated at compile time, like buffer overflows or race conditions.
This makes the Nano network more secure and prevents exploits from bad actors.
Productivity
Because of Rusts great documentation, helpful compiler, and constantly growing eco-system, refactoring and contributing to RsNano is easy.
This enables continous and faster improvement of the Nano network.
# Current Status
Visit the dev blog for the latest progress report.
We keep track of how much C++ code is already translated:
65.91 %
of the codebase is currently written in Rust.
# Goals
100% Rust
Currently, about 60% of the code base is ported. Our goal is to port 100% of the C++ code to Rust.
Well tested
We want to expand the test suite, make it faster and completely stable. This will enable us to catch bugs early and improve stability of the Nano Network.
Architecture
We want to improve the Software Architecture and align it with modern Rust standards. This will enable us to add improvements more easily.
# Links
I do live coding on YouTube and Twitch once a week
Join our Discord server and chat with us
Read our Dev Blog for the latest progress reports
Check out my Twitter for updates
Check out the source code on GitHub
Every Tuesday at 19:00 UTC I do a coding live stream where I work on RsNano. These streams are a good starting point for new contributors. Watch it on YouTube:
YouTube blocked due to privacy settings
Please accept YouTube cookies to play this video.
By accepting you will be accessing content from YouTube, a service provided by an external third party.
# Contribute
We are happy to accept your pull requests! You would like to contribute, but you don't know where to start? Join our Discord server and we'll find something.
A good starting point to get an understanding of the code base is the official Nano Core Development Documentation.
# Install
Check out our installation guide on GitHub to get the RsNano node up and running!
# Donate
Would you like to support our work? Please donate to this address:
nano_1iawmcfwmmdyr7xmnordt71gpnhnao8rsk4nywq5khtmedocaj6bafk4fb8h
# Principal Representative
We operate a beefy Principal Representative hosted in Falkenstein, Germany by Hetzner. Please feel free to choose us as your representative:
nano_1tk8h3yzkibbsti8upkfa69wqafz6mzfzgu8bu5edaay9k7hidqdunpr4tb6
Our representative currently runs the official nano-node. We will switch to RsNano-node at some point in the future.
Check out the Node Monitor for further information.
Site built with ❤️ by luxbe