Solana Development Skill (framework-kit-first)
What this Skill is for
Use this Skill when the user asks for:
-
Solana dApp UI work (React / Next.js)
-
Wallet connection + signing flows
-
Transaction building / sending / confirmation UX
-
On-chain program development (Anchor or Pinocchio)
-
Client SDK generation (typed program clients)
-
Local testing (LiteSVM, Mollusk, Surfpool)
-
Security hardening and audit-style reviews
-
Backend services (indexers, APIs, RPC integration)
-
Deployment workflows (devnet → mainnet)
Default stack decisions (opinionated)
- UI: framework-kit first
- Use @solana/client
- @solana/react-hooks
-
Prefer Wallet Standard discovery/connect via the framework-kit client
-
Use create-solana-dapp for new projects
- SDK: @solana/kit first
-
Prefer Kit types (Address , Signer , transaction message APIs, codecs)
-
Prefer @solana-program/* instruction builders over hand-rolled instruction data
-
Use BigInt for u64/u128 values
- Legacy compatibility: web3.js only at boundaries
-
If you must integrate a library that expects web3.js objects (PublicKey , Transaction , Connection ), use @solana/web3-compat as the boundary adapter
-
Do not let web3.js types leak across the entire app; contain them to adapter modules
-
See kit-web3-interop.md for adapter patterns
- Programs
-
Default: Anchor (fast iteration, IDL generation, mature tooling)
-
Performance/footprint: Pinocchio when you need CU optimization, minimal binary size, zero dependencies, or fine-grained control over parsing/allocations
- Testing
-
Default: LiteSVM or Mollusk for unit tests (fast feedback, runs in-process)
-
Use Surfpool for integration tests against realistic cluster state (mainnet/devnet) locally
-
Use solana-test-validator only when you need specific RPC behaviors not emulated by LiteSVM
- Backend
-
Framework: Axum 0.8+ with Tokio 1.40+
-
Critical: Use spawn_blocking for Solana RPC calls (they block!)
-
Database: sqlx with compile-time checked queries
-
Caching: Redis for RPC response caching
Operating procedure (how to execute tasks)
- Classify the task layer
-
UI/wallet/hook layer
-
Client SDK/scripts layer
-
Program layer (+ IDL)
-
Testing/CI layer
-
Backend (indexer/API)
-
Infra (RPC/deployment)
- Pick the right building blocks
Layer Primary Tool Alternative
UI + hooks @solana/react-hooks ConnectorKit (headless)
Client SDK @solana/kit web3-compat adapter
Programs Anchor Pinocchio (CU-critical)
Testing LiteSVM/Mollusk Surfpool (integration)
Backend Axum 0.8+
- Implement with Solana-specific correctness
Always be explicit about:
-
Cluster + RPC endpoints + websocket endpoints
-
Fee payer + recent blockhash
-
Compute budget + prioritization (where relevant)
-
Expected account owners + signers + writability
-
Token program variant (SPL Token vs Token-2022) and any extensions
- Add tests
-
Unit test: LiteSVM or Mollusk
-
Integration test: Surfpool
-
For "wallet UX", add mocked hook/provider tests where appropriate
-
Profile CU usage during development
- Deliverables expectations
When implementing changes, provide:
-
Exact files changed + diffs (or patch-style output)
-
Commands to install/build/test
-
A short "risk notes" section for anything touching signing/fees/CPIs/token transfers
Progressive disclosure (read when needed)
Frontend & Client
-
frontend-framework-kit.md - React hooks, wallet connection, React Query, error handling, performance patterns
-
kit-web3-interop.md - Kit ↔ web3.js boundary patterns, Anchor adapter examples
-
idl-codegen.md - Codama/Shank client generation
Programs (also check security.md)
-
programs-anchor.md - Anchor patterns, testing pyramid, IDL generation, deployment
-
programs-pinocchio.md - Zero-copy, CU optimization, TryFrom validation
Testing & Security
-
testing.md - LiteSVM, Mollusk, Surfpool, CI guidance
-
security.md - Vulnerability categories, program + client checklists
Backend & Deployment
-
backend-async.md - Axum 0.8/Tokio patterns, spawn_blocking, RPC integration, Redis caching
-
deployment.md - Devnet/mainnet workflows, verifiable builds, multisig, CI/CD
Ecosystem & Reference
-
ecosystem.md - Token standards, DeFi protocols, NFT infrastructure, data indexing
-
payments.md - Commerce Kit, Kora (gasless), payment UX
-
resources.md - Official documentation links
Unity & Game Development
-
unity.md - Solana.Unity-SDK, wallet integration, NFT loading, transaction building in C#
-
playsolana.md - PlaySolana ecosystem, PSG1 console, PlayDex, PlayID, SvalGuard
Task routing guide
User asks about... Primary file(s)
Wallet connection, React hooks frontend-framework-kit.md
Transaction building, Kit types kit-web3-interop.md
Anchor program code programs-anchor.md
CU optimization, Pinocchio programs-pinocchio.md
Unit testing, CU benchmarks testing.md
Security review, audit security.md
Backend API, indexer backend-async.md
Deploy to devnet/mainnet deployment.md
DeFi integration, NFTs ecosystem.md
Payment flows, checkout payments.md
Generated clients, IDL idl-codegen.md
Unity game development unity.md
PlaySolana, PSG1 console playsolana.md