| Crates.io | pinocchio-raydium-cpmm-cpi |
| lib.rs | pinocchio-raydium-cpmm-cpi |
| version | 0.1.2 |
| created_at | 2025-07-11 22:35:28.320513+00 |
| updated_at | 2025-07-12 07:38:29.70365+00 |
| description | Pinocchio helpers to invoke Raydium CPMM instructions |
| homepage | https://github.com/kirarisk/pinocchio-raydium-cpmm-cpi |
| repository | https://github.com/kirarisk/pinocchio-raydium-cpmm-cpi |
| max_upload_size | |
| id | 1748586 |
| size | 52,947 |
pinocchio-raydium-cpmm-cpi
This crate contains pinocchio helpers to perform cross-program invocations (CPIs) for Raydium CPMM instructions.
Each instruction defines a struct with the accounts and parameters required. Once all values are set, you can call directly invoke or invoke_signed to perform the CPI.
This is a no_std crate.
Note: The API defined in this crate is subject to change.
Initializing a CPMM pool:
// This example assumes that the instruction receives all required accounts
// for pool creation including creator, amm_config, authority, pool_state, etc.
InitializeCpmm {
creator,
amm_config,
authority,
pool_state,
token_0_mint,
token_1_mint,
lp_mint,
creator_token_0,
creator_token_1,
creator_lp_token,
token_0_vault,
token_1_vault,
create_pool_fee,
observation_state,
token_program,
token_0_program,
token_1_program,
associated_token_program,
system_program,
rent,
init_amount_0: 1000000,
init_amount_1: 1000000,
open_time: 1640995200, // Unix timestamp
}.invoke()?;
Performing a swap with base input:
// This example assumes that the instruction receives all required accounts
// for swapping including payer, authority, pool_state, token accounts, etc.
SwapBaseInput {
payer,
authority,
amm_config,
pool_state,
input_token_account,
output_token_account,
input_vault,
output_vault,
input_token_program,
output_token_program,
input_token_mint,
output_token_mint,
observation_state,
amount_in: 1000000, // Amount of input tokens to swap
minimum_amount_out: 950000, // Minimum output tokens expected
}.invoke()?;
The code is licensed under the Apache License Version 2.0