|
@@ -24,62 +24,92 @@ If a given example is missing, please add it!
|
|
|
|
|
|
#### account-data
|
|
|
|
|
|
+Store and retrieve data using Solana accounts.
|
|
|
+
|
|
|
[anchor](./basics/account-data/anchor), [native](./basics/account-data/native)
|
|
|
|
|
|
#### checking-accounts
|
|
|
|
|
|
+[Check that the accounts provided in incoming instructions meet particular criteria.](./basics/checking-accounts/README.md)
|
|
|
+
|
|
|
[anchor](./basics/checking-accounts/anchor), [native](./basics/checking-accounts/native)
|
|
|
|
|
|
#### close-account
|
|
|
|
|
|
+Close an account and get the Lamports back.
|
|
|
+
|
|
|
[anchor](./basics/close-account/anchor), [native](./basics/close-account/native)
|
|
|
|
|
|
#### counter
|
|
|
|
|
|
+[Use a PDA to store global state, making a counter that increments when called.](./basics/counter/README.md)
|
|
|
+
|
|
|
[anchor](./basics/counter/anchor), [native](./basics/counter/native), [seahorse](./basics/counter/seahorse)
|
|
|
|
|
|
#### create-account
|
|
|
|
|
|
+[Make new accounts on the blockchain.](./basics/create-account/README.md)
|
|
|
+
|
|
|
[anchor](./basics/create-account/anchor), [native](./basics/create-account/native)
|
|
|
|
|
|
#### cross-program-invocation
|
|
|
|
|
|
+[Invoke an instruction handler from one onchain program in another onchain program.](./basics/cross-program-invocation/README.md)
|
|
|
+
|
|
|
[anchor](./basics/cross-program-invocation/anchor), [native](./basics/cross-program-invocation/native)
|
|
|
|
|
|
#### favorites
|
|
|
|
|
|
+Save and update per-user state on the blockchain, ensuring users can only update their own information.
|
|
|
+
|
|
|
[anchor](./basics/favorites/anchor)
|
|
|
|
|
|
#### hello-solana
|
|
|
|
|
|
+[Hello World on Solana! A minimal program that logs a greeting.](./basics/hello-solana/README.md)
|
|
|
+
|
|
|
[anchor](./basics/hello-solana/anchor), [native](./basics/hello-solana/native), [seahorse](./basics/hello-solana/seahorse)
|
|
|
|
|
|
#### pda-rent-payer
|
|
|
|
|
|
+[Use a PDA to pay the rent for the creation of a new account.](./basics/pda-rent-payer/README.md)
|
|
|
+
|
|
|
[anchor](./basics/pda-rent-payer/anchor), [native](./basics/pda-rent-payer/native)
|
|
|
|
|
|
#### processing-instructions
|
|
|
|
|
|
+[Add parameters to an instruction handler and use them.](./basics/processing-instructions/README.md)
|
|
|
+
|
|
|
[anchor](./basics/processing-instructions/anchor), [native](./basics/processing-instructions/native)
|
|
|
|
|
|
#### program-derived-addresses
|
|
|
|
|
|
+Store and retrieve state in Solana.
|
|
|
+
|
|
|
[anchor](./basics/program-derived-addresses/anchor), [native](./basics/program-derived-addresses/native)
|
|
|
|
|
|
#### realloc
|
|
|
|
|
|
+How to store state that changes size in Solana.
|
|
|
+
|
|
|
[anchor](./basics/realloc/anchor), [native](./basics/realloc/native)
|
|
|
|
|
|
#### rent
|
|
|
|
|
|
+[Determine the necessary minimum rent by calculating an account's size.](./basics/rent/README.md)
|
|
|
+
|
|
|
[anchor](./basics/rent/anchor), [native](./basics/rent/native)
|
|
|
|
|
|
#### repository-layout
|
|
|
|
|
|
+[Layout larger Solana onchain programs.](./basics/repository-layout/README.md)
|
|
|
+
|
|
|
[anchor](./basics/repository-layout/anchor), [native](./basics/repository-layout/native)
|
|
|
|
|
|
#### transfer-sol
|
|
|
|
|
|
+[Send SOL between two accounts.](./basics/transfer-sol/README.md)
|
|
|
+
|
|
|
[anchor](./basics/transfer-sol/anchor), [native](./basics/transfer-sol/native), [seahorse](./basics/transfer-sol/seahorse)
|
|
|
|
|
|
</details>
|
|
@@ -88,30 +118,44 @@ If a given example is missing, please add it!
|
|
|
|
|
|
#### create-token
|
|
|
|
|
|
+[Create a token on Solana with a token symbol and icon.](./tokens/create-token/README.md)
|
|
|
+
|
|
|
[anchor](./tokens/create-token/anchor), [native](./tokens/create-token/native)
|
|
|
|
|
|
#### escrow
|
|
|
|
|
|
+Allow two users to swap digital assets with each other, each getting 100% of what the other has offered due to the power of decentralization!
|
|
|
+
|
|
|
[anchor](./tokens/escrow/anchor)
|
|
|
|
|
|
#### nft-minter
|
|
|
|
|
|
+[Mint an NFT from inside your own onchain program using the Token and Metaplex Token Metadata programs.](./tokens/nft-minter/README.md) Reminder: you don't need your own program just to mint an NFT, see the note at the top of this README.
|
|
|
+
|
|
|
[anchor](./tokens/nft-minter/anchor), [native](./tokens/nft-minter/native)
|
|
|
|
|
|
#### pda-mint-authority
|
|
|
|
|
|
+[Mint a Token from inside your own onchain program using the Token program.](./tokens/pda-mint-authority/README.md) Reminder: you don't need your own program just to mint an NFT, see the note at the top of this README.
|
|
|
+
|
|
|
[anchor](./tokens/pda-mint-authority/anchor), [native](./tokens/pda-mint-authority/native)
|
|
|
|
|
|
#### spl-token-minter
|
|
|
|
|
|
+[Mint a Token from inside your own onchain program using the Token program.](./tokens/spl-token-minter/README.md) Reminder: you don't need your own program just to mint an NFT, see the note at the top of this README.
|
|
|
+
|
|
|
[anchor](./tokens/spl-token-minter/anchor), [native](./tokens/spl-token-minter/native)
|
|
|
|
|
|
#### token-swap
|
|
|
|
|
|
+[Create liquidity pools to allow trading of new digital assets and allows users that provide liquidity to be rewarded by creating an Automated Market Maker.](./tokens/token-swap/README.md)
|
|
|
+
|
|
|
[anchor](./tokens/token-swap/anchor)
|
|
|
|
|
|
#### transfer-tokens
|
|
|
|
|
|
+[Transfer tokens between accounts](./tokens/transfer-tokens/README.md)
|
|
|
+
|
|
|
[anchor](./tokens/transfer-tokens/anchor), [native](./tokens/transfer-tokens/native), [seahorse](./tokens/transfer-tokens/seahorse)
|
|
|
|
|
|
</details>
|
|
@@ -122,54 +166,80 @@ If a given example is missing, please add it!
|
|
|
|
|
|
#### basics
|
|
|
|
|
|
+Create token mints, mint tokens, and transferr tokens using Token Extensions.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/basics/anchor)
|
|
|
|
|
|
#### cpi-guard
|
|
|
|
|
|
+Enable CPI guard to prevents certain token action from occurring within CPI (Cross-Program Invocation).
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/cpi-guard/anchor)
|
|
|
|
|
|
#### default-account-state
|
|
|
|
|
|
+Create new token accounts that are frozen by default.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/default-account-state/anchor), [native](./tokens/token-2022/default-account-state/native)
|
|
|
|
|
|
#### group
|
|
|
|
|
|
+Create tokens that belong to larger groups of tokens using the Group Pointer extension.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/group/anchor)
|
|
|
|
|
|
#### immutable-owner
|
|
|
|
|
|
+Create tokens whose owning program cannot be changed.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/immutable-owner/anchor)
|
|
|
|
|
|
#### interest-bearing
|
|
|
|
|
|
+Create tokens that show an 'interest' calculation.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/interest-bearing/anchor)
|
|
|
|
|
|
#### memo-transfer
|
|
|
|
|
|
+Create tokens where transfers must have a memo describing the transaction attached.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/memo-transfer/anchor)
|
|
|
|
|
|
#### metadata
|
|
|
|
|
|
+Create tokens that store their onchain metadata inside the token mint, without needing to use or pay for additional programs.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/metadata/anchor)
|
|
|
|
|
|
#### mint-close-authority
|
|
|
|
|
|
+Allow a designated account to close a Mint.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/mint-close-authority/anchor), [native](./tokens/token-2022/mint-close-authority/native)
|
|
|
|
|
|
#### multiple-extensions
|
|
|
|
|
|
+Use multiple Token Extensions at once.
|
|
|
+
|
|
|
[native](./tokens/token-2022/multiple-extensions/native)
|
|
|
|
|
|
#### non-transferable
|
|
|
|
|
|
+Create tokens that cannot be transferred.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/non-transferable/anchor), [native](./tokens/token-2022/non-transferable/native)
|
|
|
|
|
|
#### permanent-delegate
|
|
|
|
|
|
+Create tokens that remain under the control of an account, even when transferred elsewhere.
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/permanent-delegate/anchor)
|
|
|
|
|
|
#### transfer-fee
|
|
|
|
|
|
+Create tokens
|
|
|
+
|
|
|
[anchor](./tokens/token-2022/transfer-fee/anchor), [native](./tokens/token-2022/transfer-fee/native)
|
|
|
|
|
|
</details>
|
|
@@ -179,14 +249,20 @@ If a given example is missing, please add it!
|
|
|
|
|
|
#### cnft-burn
|
|
|
|
|
|
+Burn compressed NFTs.
|
|
|
+
|
|
|
[anchor](./compression/cnft-burn/anchor)
|
|
|
|
|
|
#### cnft-vault
|
|
|
|
|
|
+Store Metaplex compressed NFTs inside a PDA.
|
|
|
+
|
|
|
[anchor](./compression/cnft-vault/anchor)
|
|
|
|
|
|
#### cutils
|
|
|
|
|
|
+Work with Metaplex compressed NFTs.
|
|
|
+
|
|
|
[anchor](./compression/cutils/anchor)
|
|
|
|
|
|
</details>
|
|
@@ -197,6 +273,8 @@ If a given example is missing, please add it!
|
|
|
|
|
|
#### pyth
|
|
|
|
|
|
+Use a data source for offchain data (called an Oracle) to perform activities onchain.
|
|
|
+
|
|
|
[anchor](./oracles/pyth/anchor), [seahorse](./oracles/pyth/seahorse)
|
|
|
|
|
|
</details>
|