Skip to main content
Try out the RareSkills ZK AI Tutor!

Solana

Browse all Solana articles.

5 min read

Read account data with Solana web3 js and Anchor

Read account data with Solana web3 js and Anchor !Read Account Data This tutorial shows how to read account data directly from the Solana web3 Javascript client so that a web app could read it on the...

Last updated onNov 7, 2024
Read Article

10 min read

Initializing Accounts in Solana and Anchor

Initializing Accounts in Solana and Anchor !Storage in Solana Up until this point, none of our tutorials have used "storage variables" or stored anything permanent. In Solidity and Ethereum, a more...

Last updated onSep 28, 2024
Read Article

3 min read

Cross Program Invocation In Anchor

Cross Program Invocation In Anchor Cross Program Invocation (CPI) is Solana's terminology for a program calling the public function of another program. We've already done CPI before when we sent a...

Last updated onSep 9, 2024
Read Article

6 min read

PDA (Program Derived Address) vs Keypair Account in Solana

PDA (Program Derived Address) vs Keypair Account in Solana !Hero image showing PDA (Program Derived Address v.s. Keypair accounts) A program derived address (PDA) is an account whose address is...

Last updated onSep 5, 2024
Read Article

7 min read

Modifying accounts using different signers

Modifying accounts using different signers !Hero image showing Anchor Signer: Modifying accounts with different signers In our Solana tutorials thus far, we've only had one account initialize and...

Last updated onSep 4, 2024
Read Article

4 min read

Transferring SOL and building a payment splitter: "msg.value" in Solana

Transferring SOL and building a payment splitter: "msg.value" in Solana !Hero image showing Transfering SOL and building a payment splitter This tutorial will introduce the mechanism by which Solana...

Last updated onSep 2, 2024
Read Article

7 min read

Init_if_needed in Anchor and the Reinitialization Attack

Init_if_needed in Anchor and the Reinitialization Attack !Hero image showing Anchor init_if_needed In previous tutorials, we've had to initialize an account in a separate transaction before we can...

Last updated onSep 7, 2024
Read Article

6 min read

Tx.origin, msg.sender, and onlyOwner in Solana: identifying the caller

Tx.origin, msg.sender, and onlyOwner in Solana: identifying the caller !tx.origin msg.sender onlyOwner in Solana In Solidity, the is a global variable that represents the address that called or...

Last updated onAug 15, 2024
Read Article

7 min read

The unusual syntax of Rust

The unusual syntax of Rust !The unusual syntax of Rust Readers coming from a Solidity or Javascript background may find Rust's usage and syntax of , , , , and to be weird (or even ugly). This chapter...

Last updated onAug 15, 2024
Read Article

7 min read

Understanding Account Ownership in Solana: Transferring SOL out of a PDA

Understanding Account Ownership in Solana: Transferring SOL out of a PDA !Hero image showing Solona account ownership The owner of an account in Solana is able to reduce the SOL balance, write data...

Last updated onSep 6, 2024
Read Article

8 min read

Owner vs Authority in Solana

Owner vs Authority in Solana !Hero image showing Owner vs Authority Newcomers to Solana are frequently confused by the distinction between an "owner" and an "authority." This article attempts to...

Last updated onAug 15, 2024
Read Article

5 min read

The Solana clock and other "block" variables

The Solana clock and other "block" variables !solana clock Today we will cover the analogs of all the block variables from Solidity. Not all of them have 1-1 analogs. In Solidity, we have the...

Last updated onSep 5, 2024
Read Article