Overview: Voting Program
A high level overview of the project you will be building in this module.
In this module, you will build a voting program in native rust. The program will allow users to create polls with a voting window.
Module Goals
By building the project in this module, you will learn:
- What program derived addresses (PDA) are and how they fit into your development arsenal.
- The concept of Slots on Solana.
- How to manage and manipulate multiple data accounts on Solana. In the last project, you worked with one, in this project, we're taking it up a notch.
- How to calculate sizes of your data accounts for rent exemption.
- The concept of account discriminators.
- Compute unit (CU) optimization to ensure your programs only cost as much as they need to and not a lamport more.
- Cross Program Invocations (CPI) to system program instructions. You already covered this briefly in the last section where you created an account for your counter.
- How to do certain security checks and a few things to look out for when writing programs.
- How to write custom errors for your program.
- Deploying Solana programs on Testnet and considerations associated with it.
Last updated on