Program Project Templates

Info

This is a beta version of the Solana Toolkit, and is still a WIP. Please post all feedback as a GitHub issue here.

Choose from one of the below scaffolds to generate a new project workspace:

  • Anchor - A popular Rust-based framework for creating Solana programs.
  • create-solana-program - In-depth workspace generator for either Anchor program development or Native programs, including JavaScript and Rust clients.
  • Web App Templates - Generator for new projects that connects a Solana programs to various frontend stacks, includes wallet connector setup.

Anchor #

anchor init

This generates a basic workspace to be able to write an Anchor rust programs, build, test, and deploy. For more information, read the anchor init doc.

Create Solana Program #

npx create-solana-program

This generates an in-depth workspace for either Anchor program development or Native program development with either a Javascript Client, Rust Client, or both. For more information, read the create-solana-program doc.

Web App Template #

npx create-solana-dapp

This initializes a new project that connects a Solana program to a typescript frontend with a wallet connector. For more information, read the web app template doc.

Mobile App Template #

yarn create expo-app --template @solana-mobile/solana-mobile-expo-template

This is initializing a new project using the Expo framework that is specifically designed for creating mobile applications that interact with the Solana blockchain.

Update an Existing Project #

npx create-solana-program

You can add the Solana program scaffold to an existing project by following this guide.

Standard Project Layouts #

For best practices on program file structure, read this guide.