This is an example of an on-chain CRUD dapp. This example is a journal dapp where you can create, read, update, and delete journal entries on the solana blockchain and interact with the solana program via a UI.
Test it out here: solana-journal-eight.vercel.app
This project was created using the create-solana-dapp generator.
- Node v18.18.0 or higher
- Rust v1.70.0 or higher
- Anchor CLI 0.29.0 or higher
- Solana CLI 1.17.0 or higher
git clone <repo-url>
cd <repo-name>
npm install
npm run dev
This is a Solana program written in Rust using the Anchor framework.
Note: The solana program code for the journal dapp can be found in anchor/programs/src/lib.rs
You can use any normal anchor commands. Either move to the anchor
directory and run the anchor
command or prefix the command with npm run
, eg: npm run anchor
.
Running this command will create a new keypair in the anchor/target/deploy
directory and save the address to the Anchor config file and update the declare_id!
macro in the ./src/lib.rs
file of the program.
You will manually need to update the constant in anchor/lib/counter-exports.ts
to match the new program id.
npm run anchor keys sync
npm run anchor-build
npm run anchor-localnet
npm run anchor-test
npm run anchor deploy --provider.cluster devnet
This is a React app that uses the Anchor generated client to interact with the Solana program.
Start the web app
npm run dev
Build the web app
npm run build