cairo-vm
cairo-vm copied to clipboard
Refactor cairo1-run crate for library use
Is your feature request related to a problem? Please describe.
The current implementation of cairo1-run crate as a CLI restricts its usability in other projects that could benefit from its functionality as a library.
Describe the solution you'd like
Transform the cairo1-run crate into a standalone library that can be used by external projects. Ideally, the run function would return:
- Output of program execution.
- Relocated trace and memory.
- Sierra (with debug info) and CASM programs.
- CASM additional instructions (proof_mode_header, entry_code, libfunc_footer).
- Diagnostics.
- Compiler RootDatabase.
Motivation We need it for https://cairovm.codes and https://walnut.dev — projects aiming to build a debugger for Cairo / Starknet.