The fastest way to create Solana apps π
Run one command to generate a new project:
# npm
npm create solana-dapp@latest
# pnpm
pnpm create solana-dapp@latest
# bun
bun create solana-dapp@latest
# yarn (only supports the 'latest' tag)
yarn create solana-dappThis is a CLI that automates the initialization of predefined Solana templates (see below).
The official create-solana-dapp templates can be found in
this repository.
You can also use create-solana-dapp to create projects using external templates:
The --template (or -t) flag supports anything that giget supports
# npm
npm create solana-dapp@latest -t <github-org>/<github-repo>
# pnpm
pnpm create solana-dapp@latest -t <github-org>/<github-repo>
# yarn
yarn create solana-dapp -t <github-org>/<github-repo>Template authors can add an init script to the package.json file to help set up the project.
Use this script to return instructions to the user, check the anchor and solana versions, and replace text and files
in the project.
Contributions are welcome! Please see CONTRIBUTING.md for more info.
Tip
This project uses pnpm as the package manager. If you don't have it, you can install it using
corepack:
corepack enable
corepack prepare pnpm@10 --activateTo install the project locally, run the following commands:
git clone https://github.com/solana-foundation/create-solana-dapp.git
cd create-solana-dapp
pnpm install
pnpm buildDetailed instructions on the local development workflow are outlined in the Development Workflow section of the CONTRIBUTING guidelines.
{ "name": "your-template", "create-solana-dapp": { // These instructions will be returned to the user after installation "instructions": [ "Run Anchor commands:", // Adding a '+' will make the line bold and '{pm}' is replaced with the package manager "+{pm} run anchor build | test | localnet | deploy", ], // Rename is a map of terms to rename "rename": { // Rename every instance of counter "counter": { // With the name of the project "to": "{{name}}", // In the following paths "paths": ["anchor", "src"], }, }, // Check versions and give a warning if it's not installed or the version is lower "versions": { "adb": "33.0.0", "anchor": "0.30.1", "solana": "1.18.0", }, }, }