Tools for coding in Cairo

VS Code Cairo extension

VS Code Cairo extension is an extension for the Microsoft Visual Studio (VS) Code IDE that provides assistance when writing Cairo smart contracts, including live diagnostic highlighting for compile errors, quick fixes with suggestions, code formatting and completion, and more. It integrates with Scarb, and works best when Scarb is installed via asdf.

Universal-Sierra-Compiler

Universal-Sierra-Compiler is a utility tool for compiling single Sierra files (unlike Scarb, which compiles full projects) from any Sierra version into CASM.

Universal-Sierra-Compiler comes bundled with Starknet Foundry and does not need to be installed separately if Starknet Foundry is installed.

cairo-profiler

cairo-profiler is a utility tool that can be used to create profiles of Cairo executions from execution traces, which can be analyzed and used to show flame graphs and other useful information.

cairo-profiler comes bundled with Starknet Foundry and does not need to be installed separately if Starknet Foundry is installed.

Cairo Playground

Cairo Playground an online tool that can be used to both experiment with Cairo without deploying a smart contract on Starknet, as well as dive deep into the Cairo virtual machine.

Sierra Analyzer

Sierra Analyzer, developed by FuzzingLabs is a security toolkit for analyzing Sierra files, including decompiling a Sierra file, printing the contract’s control flow graph, and running static analysis detectors.

Cairo lint

Cairo lint is a collection of lints that can either be used as either a library or as a standalone binary to help both detect and fix common mistakes and improve your Cairo code.

Stark-utils

Stark-utils is a simple web application that aims to be a toolbox for Cairo developers, allowing you to convert any input to a felt, string, hexadecimal value, and more.

Thoth

Thoth is a Cairo security toolkit that includes analyzers, disassemblers, and decompilers, which enable the generation of call, control-flow, and data-flow graphs for Sierra and Casm files, as well as other advanced tools, such as a symbolic execution engine and a symbolic bounded model checker.