# Layers * **system/** contains core functionality, types and utilities. * **net/** is the p2p networking base layer. * **service/** any services such as the cashier or gateways. * **zk/** is the zk virtual machine and related zk code. * **zkas/** is the zk assembly language and compiler. * **crypto/** for the merkle tree classes and other crypto primitives. * **node/** is a fully working darkfi node. * **wallet/** key generation and management features such as derivation and storage. * **tx/** for the transaction builder. * **blockchain/** blockchain database functionality and state transition. * **consensus/** implementation of the streamlet consensus algorithm. * **rpc/** interface for remote procedure calls, includes adapter to interface with the node backend and the default jsonrpc transport mechanism. * **util/** various utilities.