Back to Sui

Install Sui

docs/content/guides/developer/getting-started/sui-install.mdx

latest5.1 KB
Original Source

Install Sui

Sui is a scalable and performant layer-1 blockchain that is home to a complete stack of native primitives ideal for building decentralized applications. Such primitives, such as those for encryption, data storage, verification, and access control, provide developers with every piece of the application stack without needing to use layer-2 chains or off-chain solutions.

In contrast to other chains, Sui uses an object-centric model, where every item on the network is an object. Transactions use objects as input, which mutate an existing object or create new objects. Each object has a unique on-chain ID.

To create objects, submit transactions, and start building an application on Sui, first you must install Sui. This installation includes the Sui CLI, a tool that creates and manages address balances, builds and publishes smart contracts, and queries information from the network.

<Tabs className="tabsHeadingCentered--small"> <TabItem value="prereq" label="Prerequisites">
  • Have a machine with one of the following supported operating systems:
    • Linux: Ubuntu version 22.04 (Jammy Jellyfish) or newer
    • macOS: macOS Monterey or newer
    • Microsoft Windows: Windows 10 or 11
</TabItem> </Tabs>

Quick install

The Sui CLI is used to interact with the Sui network, deploy packages, and manage assets. To install the Sui CLI, you can use suiup.

suiup is the most effective installation method, as it allows you to easily install and switch between different versions of not only the Sui CLI but also other Sui stack components like walrus and mvr.

Alternative quick install instructions for Homebrew or Chocolately do not support installing other Sui stack components. Other components will need to be installed through their individual binaries if you'd like to use them in the future.

:::caution

Installations using Homebrew or Chocolatey might take several minutes if you do not have any of the Sui prerequisites installed. Using suiup is often much faster and highly recommended.

:::

<ImportContent source="quick-install.mdx" mode="snippet" />

The quick install is suitable for most use cases. For those wanting more control over the installation process, you can install from source or install binaries.

If Sui is already installed from a previous development environment, be sure to upgrade to the latest version.

:::info Looking for a project to clone?

Before you can create and publish a smart contract, you must configure a Sui client and obtain SUI tokens.

Then, you can create a "Hello, World!" example or clone another example to start building.

:::

Installation details

suiup installation details

Refer to the suiup repository's README for information regarding installation files and their locations.

Default configuration file

Regardless of whether you used suiup, Homebrew, or Chocolately, Sui will store a primary configuration in the ~/.sui/sui_config/client.yaml file. This file defines settings and preferences for your environment, such as:

  • Network environment details for Mainnet, Testnet, Devnet, and Localnet networks.

  • Active environment, which specifies the network the CLI commands will target.

  • Active address, which specifies the Sui address the CLI will use for transactions and queries.

  • Keystore location, which specifies where Sui stores your address' private keys.

<div className="next-steps-module"> <div className="next-steps-header"> <h3>Next steps</h3> </div> <div className="next-steps-grid"> <Card className="plausible-event-name=install+client+button" title="Configure a Sui Client" href="/guides/developer/getting-started/configure-sui-client" > Configure a Sui client to get a Sui address and connect to Testnet. </Card> <Card className="plausible-event-name=install+faucet+button" title="Get SUI from Faucet" href="/guides/developer/getting-started/get-coins" > Obtain SUI from a faucet to deploy packages on Testnet. </Card> <Card className="plausible-event-name=install+hello+button" title="Hello, World!" href="/guides/developer/getting-started/hello-world" > Clone the "Hello, World!" project. </Card> </div> </div>