Sol.College

Build a Solana dapp end to end

Scaffold the app

create-solana-dapp is the Solana Foundation's generator. It creates a web app plus an Anchor workspace, with wallet connection already wired up. Pick a template when prompted.

npx create-solana-dapp@latest

Write the program

Start from the accounts, not the handlers: decide which accounts each instruction reads and writes, which must sign, and which are PDAs. The lessons on account constraints and PDAs show how real projects in the stack do this.

Build, test and sync the program ID

anchor build compiles the program and writes the IDL to target/idl. anchor keys sync puts the program keypair's address into declare_id! and Anchor.toml. anchor test runs the test suite against a local validator.

anchor build
anchor keys sync
anchor test

Deploy to devnet

Fund a development keypair with devnet SOL and deploy. Devnet SOL has no value.

solana config set --url devnet
solana airdrop 2
anchor deploy --provider.cluster devnet

Call it from the browser

The client loads the IDL, connects a wallet, builds the instruction and asks the wallet to sign. The Sol.College lesson dapps work this way: they bundle @coral-xyz/anchor, @solana/web3.js and the Phantom and Solflare wallet adapters, load each program's IDL, and send every transaction through your own wallet.

Harden before mainnet

Write failure-path tests, go through the security checklist, and use a multisig as upgrade authority.

Commands and APIs change, so the official Solana docs and Anchor docs are the source of truth.