The cardano-node
repository is the point of integration of the
ledger,
consensus,
networking
and logging
layers. It provides the cardano-node
executable which is used to participate in the Cardano network.
This is an approximate diagram of the dependencies among the different components:
stateDiagram-v2
cn: cardano-node
tr: trace-dispatcher/iohk-monitoring-framework
ca: cardano-api
co: ouroboros-consensus
on: ouroboros-network
cl: cardano-ledger
p: plutus
cn --> ca
cn --> tr
ca --> co
ca --> on
co --> on
co --> cl
ca --> cl
cl --> p
The process for getting a cardano-node
executable can be found in the
Cardano Developer
Portal.
The configuration and files required to run a cardano-node
in one of the
supported networks are described also in the Cardano Developer
Portal.
The API documentation is published on the
webpage. If you want to use the
cardano-node
Haskell packages from another Haskell project, you should set up
CHaP to get the packages defined in this
repository.
For some troubleshooting help with building or running cardano-node
,
the wiki has a troubleshooting
page
that documents some common gotchas.