This is an example of an on-chain decentralized Messaging dapp. This example is a relay chat dapp where you can create, read, update, and delete messaging entries on the solana blockchain and interact with the solana program via a UI. Please note that this only works with Anchor version 0.29.0 for now 🥺.
Test it out here: https://relay-devnet.vercel.app
- Node v18.18.0 or higher
- Rust v1.70.0 or higher
- Anchor CLI 0.29.0 only for now
- Solana CLI 1.18.6 or higher
git clone <repo-url>
git clone https://github.com/0xGRAV3R/relay-devnet
cd <repo-url>
cd relay-devnet
#### Install dependencies
```shell
npm installnpm run dev
This is a Solana program written in Rust using the Anchor framework.
Note: The solana program code for the relay 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. For this version, you can cd anchor first to get to anchor directory.
anchor keys sync
npm run anchor keys syncanchor build
npm run anchor-buildnpm run anchor-localnetnpm run anchor-testanchor deploy --provider.cluster testnet
(or)
anchor deploy --provider.cluster devnet
npm run anchor deploy --provider.cluster devnetThis is a React app that uses the Anchor generated client to interact with the Solana program. You can cd to root or cd ..
Start the web app
npm run devBuild the web app
npm run build