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

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

Close your terminal. Open a new terminal and confirm global nilup tool installation by running:

nilup -V

Your output should look similar to the following:

nilup 22c84830fff3c86beec27a8cb6353d45e7bfb8a4
  1. Use nilup to install the latest version of the Nillion SDK
nilup install latest
nilup use latest
nilup init

Optionally, enable nilup telemetry by providing your Ethereum wallet address. We collect this data to understand how the software is used and to assist you in case of issues. In doing this, you consent to the collection of telemetry data by the Nillion Network. We 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>

Close your terminal. Open a new terminal and confirm global Nillion tool installation with:

nillion -V

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