Prototype node software for an IOTA network without the Coordinator
About ◈ Design ◈ Implemented Coordicide modules ◈ Work-in-progress modules ◈ Installation ◈ Getting started ◈ Client-Library and HTTP API reference ◈ Supporting the project ◈ Joining the discussion
About
This repository is where the IOTA Foundation's Research Department runs simulations of the Coordicide modules to study and evaluate their performance.
The aim of this open repository is to give the community the opportunity to follow developments, take part in testing, and learn more about Coordicide.
Note: You can find details about future development plans in our roadmap.
Design
The code in GoShimmer is modular, where each module represents either one of the Coordicide components or a basic node function such as the gossip layer, ledger state, and API.
This approach allows us to develop each module in parallel and to test GoShimmer with one or more different versions.
Each module is defined in the packages
directory and can be enabled, using the plugins
directory.
Note: See the main.go
file to see which plugins are currently supported.
Implemented Coordicide modules
The master
branch is the stable version of the GoShimmer software, which includes a minimal set of modules to allow you to send and gossip zero-value transactions.
The master
branch includes the following Coordicide modules: