{"repo":"RGB-WG/rgb-node","free":true,"listed":false,"github":"https://github.com/RGB-WG/rgb-node","clone":"git clone https://github.com/RGB-WG/rgb-node.git","description":"The official (self-hosted) server for RGB","language":"Rust","stars":149,"topics":["bitcoin","lnp-bp","smart-contracts","client-side-validation","rgb","lightning","lightning-network"],"license":"Apache-2.0","category":"blockchain-web3","readme_excerpt":"RGB Node: sovereign smart contracts backend Components This repository contains the following crates: - rgb-node : main indexing daemon, which can be used as an embedded multi-thread service, or compiled into a standalone binary ( rgbd ); - rgb-client : client to work with the daemon and a command-line utility rgb-cli ; - rgb-rpc : a shared crate between rgb-node and rgb-client . Node Architecture The node operates as a set of threads, communicating through Crossbeam channels. It leverages [ microservices.rs ] and [ netservices.rs ] crates, which serves as the node non-blocking reactor-based (see [ io-reactor ]) microservice frameworks. The node daemon has the following components: - Broker , integrating all services and managing their communications; - Dispatcher : reactor-based thread managing incoming client RPC connections; - Contracts reader , performing read-only ultra-fast access to the contracts and their state; - Contracts writer , performing operations on contracts which require persistence; - Watcher , connecting BP Node and monitoring on-chain and mempool events; - Validator : a worker thread pool, doing consignment validation in background; - AsyncDispatcher , used in embedded mode (see below). All read operations can be performed in parallel; the write operation does not block read operations but requires exclusive access to the contract (meaning that all writes to the same contract are performed serially). Using RGB Node can be run in two modes: as a standalone","default_branch":null,"files":null,"tree":[],"storefront":"/r/RGB-WG","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/RGB-WG/rgb-node/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}