https://github.com/superical/solana-attendance-deposit
https://github.com/superical/solana-attendance-deposit
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/superical/solana-attendance-deposit
- Owner: superical
- Created: 2024-04-30T12:09:35.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-05-01T16:57:43.000Z (about 2 years ago)
- Last Synced: 2025-03-26T12:11:51.398Z (about 1 year ago)
- Language: TypeScript
- Size: 62.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Solana Attendance Deposit
This is a Solana program that allows users to deposit funds into a program account and then withdraw them after a certain amount of time has passed. The program is designed to be used as a way to incentivize attendance at events, such as courses, hackathons or meetups.
## Interaction Flow
1. Course Manager ➡️ Create courses ➡️ Specify required deposit and number of lessons in course
2. Students ➡️ Register courses ➡️ Deposit Funds (SPL tokens)
3. Course Manager ➡️ Create lessons and set a deadline for checking in attendance
4. Students check in their attendance for every lesson before their deadline
5. After the deadline, students cannot check in their attendance for that particular lesson
6. When the number of lessons created equals the number of lessons specified when creating the course, the course is considered completed.
7. Students can withdraw their deposit after the course is completed if all of their attendances are checked.
## Pre-requisites
- solana-cargo-build-sbf 1.18.9
- solana-cli 1.18.9
- platform-tools v1.41
- rustc 1.75.0
- anchor-cli 0.29.0
- node v20.11.1
- yarn 1.22.22