Skip to main content

Nillion SDK and Tools

The Nillion SDK includes CLI tools for generating user and node keys, compiling Nada programs, running programs locally, running a nillion devnet, and connecting to the Nillion network.

Installation

1. Install nilup, the Nillion SDK tool installer and version manager.

info

Nillion SDK binaries are available for Linux and macOS platforms. For Windows installation, make sure to follow our Windows developer environment setup guide ahead of installing binaries.

For the security-conscious, please download the install.sh script, so that you can inspect how it works, before piping it to bash.

curl https://nilup.nilogy.xyz/install.sh | bash

The install script installs nilup and the latest version of the SDK. Close your terminal. Open a new terminal and confirm both nilup and nillion are installed:

nilup -V; nillion -V

// Your output should be similar to the below
nilup 22c84830fff3c86beec27a8cb6353d45e7bfb8a4
tools-config 22c84830fff3c86beec27a8cb6353d45e7bfb8a4

Optionally enable nilup telemetry, providing your Ethereum wallet address. We collect this data to understand how the software is used, and to better assist you in case of issues. In doing this, you consent to the collection of telemetry data by the Nillion Network. While we will not collect any personal information, we still recommend using a new wallet address that cannot be linked to your identity by any third party. For more information, check out our privacy policy.

nilup instrumentation enable --wallet <your-eth-wallet-address>

Nillion SDK tools

After installation, the following SDK tools are available globally:

  • nilup: a tool to install the Nillion SDK and manage Nillion SDK versions.
  • nillion: a cli-based Nillion Client and tool for interacting with the Nillion Network from the command line to generate user keys, generate node keys, store secrets, retrieve secrets, store programs, compute on secrets, and fetch information about clusters and nodes.
  • nillion-devnet: a tool that allows you to spin up and interact with a local test Nillion network that is completely isolated within your computer
  • node-key2peerid: a tool that creates a peer id from your node key
  • nada: a tool to manage Nada projects (create project, compile, run, and test programs, generate tests, etc.).
  • nada-run: a tool that executes programs against a stripped down version of a Nillion devnet
  • pynadac: a tool that compiles Nada programs; pynadac takes an input program defined in Nada and produces a compiled version of it ready to be run with nada-run or stored on the Nillion Network

Command structure

Nillion SDK tool commands follow a structured format:


<tool> [options] <command>

For example, to generate a user key using the nillion command, run:

nillion user-key-gen user.key

To get full usage details including a comprehensive list of global commands and options available for a specific tool, run:

<tool> --help

For example, to view the available commands for the nada tool, run:

nada --help