Workshop at Buidler Fest
Organize workshop(s) during the Buidler Fest second day to gather builders feedback and insights about what they would expect from an alternative node.
Read more
An alternative Rust node client for the Cardano blockchain. Aimed as an entrypoint for client applications initially, it aspires to become a full block-producing node running side-by-side the Haskell nodes to further increase the decentralisation of the platform while fostering its rich open source ecosystem.
One of the core objectives is to achieve a full block-producing Cardano node which can run side-by-side the existing Haskell nodes in a fully interoperable manner. The project is ambitious and spans over many areas such as networking, cryptography or language theory. It is developed from several parts each covering a different aspect of the node and its surrounding ecosystem.
Besides, Amaru is also geared towards developer experience and aims at providing easy to grasp interfaces using widely spread technologies such as gRPC while maintaining compatibility with the strong ecosystem of middlewares, such as Ogmios or Oura, that constitutes the backbone of Cardano services.
A node capable of synchronizing the chain from a (remote) trusted peer, and serve the data to client applications through an API query layer.
Such a node is most useful for decentralised applications building on the blockchain. It doesn't however take part in the consensus nor help to propagate blocks on the network.
A full relay node as an entrypoint to the network is still required at this point.
Organize workshop(s) during the Buidler Fest second day to gather builders feedback and insights about what they would expect from an alternative node.
Apply a subset of the ledger rules to partially validate transactions sent through the node in an attempt to provide better user feedback, and in the longer run, prepare the ground for a relay node.
A node capable of validating (at least partially) blocks seen on the network and propagate them by taking part in the p2p gossiping between nodes. It can also seemingly follow the chain from multiple peers by performing adequate chain selection.
Such node doesn't yet take part in the consensus and cannot produce blocks. It can however fully replace any relay and is, from the perspective of any external observer, a Cardano relay node.
A simple pipeline showcasing an Amaru node fetching blocks from the network, validating their header (VRF & KES) and forwarding them to an in-memory ledger performing UTxO management and phase-2 validations.
While a relay node isn't capable of producing blocks on its own, it should perfectly blend in a hybrid testnet comprises of classic Haskell nodes acting as block producers and Amaru relay nodes.
If you are a stake pool operator on Cardano, we welcome you to reach out and help us launch this into orbit.
A node that can produce blocks and take part to the consensus. It can monitor the leader schedule, manage a mempool, forge blocks and follow protocol updates (hard-forks).
A full node is not however capable of validating the historical chain. Instead, it always bootstrap from a snapshot constructed from an archive node.
A node that can validate any historical part of the chain, including the Byron era of Cardano. Its purpose is to produce ledger and blockchain snapshot usable by full nodes.
At this point, it is unclear whether we want to build this, for the current Haskell nodes already fullfil that role and there's at this point no clear benefits in building an alternative.