#solana #anchor-gen #generate #json #anchor #declare-id

macro anchor-generate-cpi-crate

Generates an Anchor CPI crate from a JSON IDL

3 unstable releases

new 0.4.0 May 9, 2025
0.3.1 Sep 27, 2022
0.3.0 Jul 26, 2022

#7 in #anchor-gen

Download history 2079/week @ 2025-01-18 2997/week @ 2025-01-25 3440/week @ 2025-02-01 2776/week @ 2025-02-08 3427/week @ 2025-02-15 2636/week @ 2025-02-22 2257/week @ 2025-03-01 2386/week @ 2025-03-08 2787/week @ 2025-03-15 2802/week @ 2025-03-22 1649/week @ 2025-03-29 2939/week @ 2025-04-05 2996/week @ 2025-04-12 3435/week @ 2025-04-19 3779/week @ 2025-04-26 1376/week @ 2025-05-03

12,098 downloads per month
Used in 35 crates (via anchor-gen)

Apache-2.0

39KB
643 lines

anchor-gen

Generates a crate for cross-program invocations to an Anchor program from a JSON IDL.

Usage

In a new crate, write:

anchor_gen::generate_cpi_crate!("../../examples/govern-cpi/idl.json");

declare_id!("GjphYQcbP1m3FuDyCTUJf2mUMxKPE3j6feWU1rxvC7Ps");

This will generate a fully functional Rust CPI client for your IDL.

More examples can be found in the examples/ directory.

Note: This does not work on legacy IDLs. To migrate a legacy IDL, use anchor idl convert idl.json.

License: Apache-2.0

Dependencies

~3MB
~66K SLoC