STARKIRO is a collection of educational scripts built using the Cairo programming language, specifically designed for the Starknet ecosystem. These scripts are ideal for both beginners and intermediate developers looking to deepen their understanding of Cairo and Starknet concepts.
-
Install Cargo
Scarb, the official build tool for Cairo, relies on Cargo as a dependency. Cargo is included with the Rust programming language. Follow these steps to install Cargo:
Visit the Rust installation page and follow the instructions to install Rust, which includes Cargo.
Alternatively, use the appropriate command for your operating system
- Linux and macOS
curl https://sh.rustup.rs -sSf | sh
- Windows Download and run the installer from the official Rust website.
- Linux and macOS
-
Verify Cargo Installation
Confirm that Cargo is installed by checking its version:
cargo --version
-
Install Scarb
Please refer to the asdf documentation to install all prerequisites
To get started, install Scarb by running the following commands in your terminal:
asdf plugin add scarb
asdf install scarb latest
asdf global scarb latest
-
Verify Scarb Installation
Confirm that Scarb is installed correctly by checking its version:
scarb --version
First, navigate to the general cairo/scripts/ directory:
cd cairo/scripts/
Then, navigate to the specific script's directory you want to run. For example, if the script you want to execute is in a folder named example_script, navigate into that directory:
cd example_script
Build the project with the following command:
scarb build
To execute the main function of the script, use:
scarb cairo-run
-
Install Cargo
Scarb, the official build tool for Cairo, relies on Cargo as a dependency. Cargo is included with the Rust programming language. Follow these steps to install Cargo:
Visit the Rust installation page and follow the instructions to install Rust, which includes Cargo.
Alternatively, use the appropriate command for your operating system
- Linux and macOS
curl https://sh.rustup.rs -sSf | sh
- Windows Download and run the installer from the official Rust website.
- Linux and macOS
-
Verify Cargo Installation
Confirm that Cargo is installed by checking its version:
cargo --version
- Install Scarb Before you can build and test Cairo contracts, you need to have Scarb, the official build tool for Cairo. Install it with these steps:
asdf plugin add scarb
asdf install scarb latest
asdf global scarb latest
- Install Install SnForge (Cairo Testing Framework) SnForge is the tool used to run unit tests for Cairo contracts in the Starknet ecosystem. Install it by running:
pip install snforge
After installation, confirm that both tools are correctly installed by running:
For Scarb:
scarb --version
For SnForge:
snforge --version
Proceed to the directory where your Cairo contract is located.
Example:
cd path/to/your/cairo-contract-directory
Use Scarb to compile your Cairo contract by running:
Copy code
scarb build
This will generate the necessary artifacts for your Cairo contract.
Once the contract is compiled, you can run unit tests using SnForge. .
To run your contract's tests, use the following command:
snforge test
SnForge will automatically detect the test files in your project and run them.
After running the tests, you will see the results in your terminal. If the tests fail, the output will include details that will help you debug the issue. If everything passes, you’ll see confirmation that your contract is working as expected.
The .tool-versions
file is a configuration file used by asdf to manage the versions of tools and dependencies required for each script or contract. It ensures consistency across development environments and helps avoid version mismatches.
When you navigate to a directory containing a .tool-versions
file, asdf
automatically switches to the specified versions of the tools listed in the file.
Here is an example of how a .tool-versions
file might look:
scarb 0.5.2
cairo-lang 2.0.0
This example specifies that the project requires Scarb version 0.5.2
and Cairo version 2.0.0
.
If you attempt to compile a Cairo file with incorrect versions of dependencies, you may encounter an error like this:
Error: No such command `cairo-build`. Please ensure you have the correct version of Cairo installed.
To resolve this, navigate to the directory containing the .tool-versions
file and run:
asdf install
This will install the correct versions of the tools specified in the .tool-versions
file.
- Always check the
.tool-versions
file in the script or contract directory before building or running. - Use
asdf install
to ensure all required dependencies are correctly installed.