Agent skill

generating-solana-projects

Generates complete Solana blockchain projects with Anchor framework (v0.32.1) and Next.js frontend including Rust smart contracts, tests, and wallet integration. Use when creating Solana dApps, NFT marketplaces, token programs, DAOs, DeFi protocols, or when user mentions Solana, Anchor, or blockchain projects.

Stars 232
Forks 15

Install this agent skill to your Project

npx add-skill https://github.com/aiskillstore/marketplace/tree/main/skills/mszgy/generating-solana-projects

SKILL.md

Generating Solana Projects

Goal: Create production-ready Solana blockchain projects with Anchor framework and Next.js frontend.

Workflow

  1. Gather requirements: Ask user for project name, program functionality, required instructions, and frontend features
  2. Generate project structure: Create complete directory tree following Anchor conventions
  3. Create Rust smart contract: Generate lib.rs, state.rs, errors.rs, and instruction handlers in programs/
  4. Create configuration files: Generate Anchor.toml, Cargo.toml, package.json, tsconfig.json with version 0.32.1
  5. Create tests: Generate TypeScript test file with Anchor testing framework setup
  6. Create Next.js frontend: Generate wallet provider setup, Anchor client, and UI components in app/
  7. Provide setup instructions: Tell user to run anchor keys list, update program IDs, build, deploy, and test

Critical versions

Always use these exact versions for compatibility:

  • Anchor: 0.32.1
  • anchor-lang (Rust): 0.32.1
  • @coral-xyz/anchor (JS): ^0.32.1
  • @solana/web3.js: ^1.87.6
  • Next.js: 14.0.4

Project structure template

{project-name}/
├── Anchor.toml
├── Cargo.toml (workspace)
├── package.json
├── programs/{program-name}/
│   ├── Cargo.toml
│   └── src/
│       ├── lib.rs
│       ├── state.rs
│       ├── errors.rs
│       └── instructions/
├── tests/{program-name}.ts
└── app/ (Next.js)
    ├── package.json
    └── src/
        ├── pages/_app.tsx
        ├── components/
        └── utils/anchorSetup.ts

Important reminders

After generation, user must:

  1. Generate program ID: anchor keys list
  2. Update program ID in three locations: Anchor.toml, lib.rs (declare_id!), anchorSetup.ts
  3. Build before deploying: anchor build generates IDL and types needed by frontend

For detailed templates, code snippets, and examples, see reference.md and examples.md.

Didn't find tool you were looking for?

Be as detailed as possible for better results