@floki-inu/contracts-solana
v0.0.30
Published
We maintain the programs using the anchor framework for solana.
Downloads
53
Readme
Floki solana contracts
We maintain the programs using the anchor framework for solana.
To read more about, please check anchor-lang.
Dictionary
Before we start, it's a good idea to have a little of context for some words:
- program(s): Are our 'code' in solana environment, it's equivalent of smart contracts in other chains.
- achor: It's a framework to help us to develop secure programs over solana chain.
- pda(s): or program derivated address are like a storage for our program. In solana programs don't keep data, they create accounts to store it's data.
- accounts: everything in solana are accounts and is stored in accounts, tokens, programs, wallets, etc.
Project folder structure
- programs: This folder contains all of our programs.
- src: Where our types or any other utility helper will be deployed to an NPM package.
- tests: Our test files for all programs.
- migrations: Are anchor folder to deal with the deploy functionalities.
Requirements
To be able to run everything fine you must install:
- Rust: the language to code on solana
- Solana CLI: With provide a lot of solana helpers to build, deploy, and code through your CLI.
- Anchor: A solana framework to help us create programs securely.
How to
A quick how to, step by step do actions.
Run a validator locally with a contract
The following commads will start a validator locally and deploy the contract to it:
solana-test-validator;
# in another terminal
yarn build;
yarn deploy localnet;
Run the tests
Make sure that you don't have any local validator running. If you have, stop it, or skip the validator check with --skip-local-validator
yarn test:launchpad
Deploy
yarn deploy <cluster>
example:
yarn deploy devnet
Update program interfaces on solscan
yarn idl:upgrade -f <idl_path> <program_id>
and if you want to upgrade this in a different provider than your solana-cli
default configuration:
yarn idl:upgrade -f <idl_path> <program_id> --provider.cluster <cluster>
Update your solana default provider
solana config set --url <cluster>