O oficial Cliente de nó de protocolo Dusk e plataforma de contrato inteligente.
Instável : Nenhuma garantia pode ser dada quanto à estabilidade da API, o projeto está em desenvolvimento.
Para obter mais informações sobre como executar um nó, consulte nossos documentos:
Rusk faz uso do conjunto de ferramentas noturno, certifique-se de que esteja instalado. Além disso, para construir os contratos WASM, é necessário wasm-pack
.
Para instalar e configurar o conjunto de ferramentas noturno e instalar wasm-pack
, execute:
rustup toolchain install nightly
rustup default nightly
cargo install wasm-pack
Para construir rusk
a partir da fonte, são necessários Rust, GCC e Clang. Depois que as dependências estiverem instaladas, você pode simplesmente executar o seguinte comando para compilar tudo:
make
Para executar testes:
make test
Isso também irá compilar todos os contratos de gênese e seus circuitos associados.
Pré-requisitos:
# Generate the keys used by the circuits
make keys
# Compile all the genesis contracts
make wasm
# Copy example consensus.keys
mkdir -p ~ /.dusk/rusk
cp examples/consensus.keys ~ /.dusk/rusk/consensus.keys
Execute um único cluster de nó completo com estado de exemplo.
# Generate genesis state
cargo r --release -p rusk -- recovery state --init examples/genesis.toml -o /tmp/example.state
# Launch a local ephemeral node
DUSK_CONSENSUS_KEYS_PASS=password cargo r --release -p rusk -- -s /tmp/example.state
O nó pode ser construído como provador apenas da seguinte forma:
cargo r --release --no-default-features --features prover -p rusk
Este nó provador estará acessível em https://localhost:8080
. Aplicativos como o rusk-wallet podem ser conectados a ele para uma prova local mais rápida e privada.
Para apenas compilar todos os contratos do genesis sem executar o servidor:
make contracts
Para gerar um contrato de gênese específico:
# generate the wasm for `transfer` contract
make wasm for=transfer
Veja também make help
para todos os comandos disponíveis
Também é possível executar um nó efêmero local com Docker.
Para construir a imagem Docker:
docker build -t rusk .
Para executar o Rusk dentro de um contêiner Docker:
docker run -p 9000:9000/udp -p 8080:8080/tcp rusk
A porta 9000 é usada para Kadcast, a porta 8080 para APIs HTTP e GraphQL.
O software Rusk é licenciado sob a Licença Pública Mozilla Versão 2.0.