I am currently focusing on solana on-chain program development. The solana protocol at large is interesting but I'm choosing program development as my entrypoint.
Here's some tools and concepts to help get started with solana on-chain program development.
For most of the program development process you're going to want to deploy your program to localnet which is just a local version of solana running on your machine. From my understanding you can't debug a deployed program unless you have direct access to the network which means you would need to be or have access to a devnet validator.
The following repo is some boilerplate code and tooling for compiling your program from rust to the bpf binary:
So here's a few high level steps:
- download solana
- build and solana to run locally
- download the program template above
- use the custom cargo commands "cargo build-bpf"
- then deploy the compiled .so file to localnet
- code, test, debug and iterate
Today I completed steps 1-5. I'm going to build a simple multi-sig onchain wallet program. Here's the repo to follow along.