IvoryPay Contract Lib
A Typescript client library for Ivorypay's Solana program
Installation
npm install @ivorypay-contract/ivorypay-contract --save
OR
yarn add @ivorypay-contract/ivorypay-contract
Usage
IvoryPay Contract Lib provides the IvoryWeb3 class to initiate an instance of the program and its instructions :
import {IvoryWeb3} from "@ivorypay-contract/ivorypay-contract";
import dotenv from "dotenv";
const web3 = new IvoryWeb3(
process.env.IVORYPAY_SIGNER_KEY,
"devnet",
{
paymentMainnet: "https://api.mainnet-beta.solana.com";
paymentDevnet: "https://api.devnet.solana.com";
swapMainnet: "https://api.mainnet-beta.solana.com";
swapDevnet: "https://api.devnet.solana.com";
},
process.env.IVORYPAY_FAUCET_SIGNER
);
Testing
Testing Ivorypay's Solana Program will require you create your personal signer, edit the program to store your signer's public key and deploy it on devnet to test the functionalities of the program
Requirements
- Rust
- Typescript
- Node.js >=16.17.0
- Anchor >=0.25.0
- Solana >=1.14.13
Instructions to Setup Repository
To setup the repository, carry out the following instructions:
- Clone the repository
- Generate a Solana keypair or use a wallet
- Create a .env file from the .env.example using the private key of the wallet from step 2 as the value for IVORYPAY_SIGNER_KEY
- Open lib.rs in the program's src folder and use the public key as the value of IVORY_SIGNER constant
- Using
anchor build
build the contract - Check for the new program id usnig
anchor keys list
- Replace the public key in the
declare_id!()
macro of the lib.rs with the key gotten from Step 6 - Run
anchor build
again - Deploy to devnet using
anchor deploy
Make sure your cluster is set todevnet
if you are deploying to devnet. To use local test valaidator, refer to Anchor's official website