dandlezzz / sugar

Candy Machine Rust CLI.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Crate Downloads Stars Forks Release Build and Release License

Sugar: A Candy Machine CLI

Sugar is an alternative to the current Metaplex Candy Machine CLI. It has been written from the ground up and includes several improvements:

  • better performance for upload of media/metadata files and deploy of the candy machine — these operations take advantage of multithreaded systems to significantly speed up the computational time needed;
  • simplified build and installation procedures taking advantage of cargo package management, including a binary distributable package ready to use;
  • robust error handling and validation of inputs, including improvements to config and cache files, leading to more informative error messages.

See the docs for full installation and usage instructions.

Note: This is a beta release of Sugar. Use at your own risk. The current version supports only systems running macOS, Linux, or another Unix-like OS.

Installation

To install, either download a binary, install from Crates.io, or install from source. Non-technical users will typically find using a pre-built binary to be simpler.

Dependencies: When installing on Ubuntu or WSL (Windows Subsystem Linux), you may need to install some additional dependencies:

sudo apt install libssl-dev libudev-dev pkg-config

macOS users may need to install the OpenSSL library, which can be done using Homebrew:

brew install openssl@3

Binaries

Binaries for the supported OS can be found at:

To install Sugar pre-built binary on a supported OS, run the following in your terminal:

bash <(curl -sSf https://raw.githubusercontent.com/metaplex-foundation/sugar/main/script/sugar-install.sh)

Using Crates.io

cargo install sugar-cli --locked

Build From Source

cargo install --locked --path ./

Quick Start

Set up your Solana CLI config with an RPC url and a keypair:

solana config set --url <rpc url> --keypair <path to keypair file>

Sugar will then use these settings by default if you don't specify them as CLI options, allowing commands to be much simpler. If you need help setting up Solana CLI and creating a devnet wallet, check the Candy Machine v2 documentation.

Create a folder named assets to store your json and media file pairs with the naming convention 0.json, 0., 1.json, 1., etc., where the extension is .png, .jpg, etc. This is the same format described in the Candy Machine v2 documentation.

You can then use the launch command to start an interactive process to create your config file and deploy a Candy Machine to Solana:

sugar launch

At the end of the execution of the launch command, the Candy Machine will be deployed on-chain.

About

Candy Machine Rust CLI.

License:Apache License 2.0


Languages

Language:Rust 90.3%Language:Shell 9.7%