We are more than halfway through the course, and you already have some experience with programming on Solana. It is time to create something on your own! You will be building a dApp that will serve as the culmination of everything you have learned so far. Feel free to implement whatever comes to your mind, (as long as it passes the requirements) it may result in a truly great idea!
This does not mean that the School of Solana is coming to an end just yet! There are still several exciting lectures ahead, as well as one final task.
This task consists of two parts:
- Core of your dApp
- A deployed Solana program.
- Frontend
- A simple frontend to interact with the dApp.
- An Anchor program deployed on Devnet or Mainnet.
- The Anchor program must use a PDA (Program Derived Address).
- At least one TypeScript test for each Anchor program instruction. These tests should cover both happy and unhappy (intentional error-triggering) scenarios.
- A simple frontend deployed using your preferred provider (for more info, check below).
- A README.md file that contains:
- A brief description of your project, explaining how it works and its purpose.
- If you have successfully deployed both the Anchor program and the frontend, include a link where we can view the results.
- Instructions on how to build and test your Anchor program locally.
- Instructions on how to run the frontend app locally (this is optional for those who deploy frontend).
We highly recommended starting with something simple. Take time to think through your project and work on it in iterations. Do not try to implement everything at once!
Below is a list of few ideas to get you started:
- Social app
- Giphy
- Friendtech
- Spotify
- Blog
- Voting (D21 - Janeček method)
- DeFi
- Crowdfunding
- Raffles
- Escrow
- Tipping
- Lending (Save Documentation)
- Liquid Staking (Marinade Documentation)
- Data Query with Pyth (Pyth Documentation)
- AMM (Raydium Documentation)
- Gaming
- Browser Game (Gaming on Solana)
The deadline for this task is Wednesday, November 27th, 2024 23:59 UTC.
Caution
Note that we will not accept submissions after the deadline.
There are two folders, one for the Anchor project, and the second one for the frontend. Feel free to update this structure if you need to. If you make any significant changes to the structure, please describe them in the project description.
The evaluation process is based on the requirements. If you meet the requirements, you pass the task!
Let's say you are going to implement the Twitter dApp as the Solana Program. Here's how the steps could look:
1. Implement Twitter dApp using the Anchor framework.
2. Test the Twitter dApp using the Anchor framework.
3. Deploy the Twitter dApp on the Solana Devnet.
4. Using the Solana Scaffold template, implement frontend for the Twitter dApp.
5. Publish Frontend using Vercel.
6. Describe dApp within the readme (Frontend + Anchor project).
7. Submit the Twitter dApp using GitHub Classroom.
- Vercel
- Solana dApp Scaffold
- Account Macro Constraints
- Metaplex Documentation
- Solana Developers Courses
Tip
If you have any questions, feel free to reach out to us on Discord.