Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Bonfida/token-vesting
A Vesting Contract for the Solana Blockchain
https://github.com/Bonfida/token-vesting
react rust solana solana-program solana-token typescript
Last synced: about 2 months ago
JSON representation
A Vesting Contract for the Solana Blockchain
- Host: GitHub
- URL: https://github.com/Bonfida/token-vesting
- Owner: Bonfida
- License: other
- Created: 2020-12-27T11:42:42.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-06-25T12:44:40.000Z (6 months ago)
- Last Synced: 2024-10-12T01:21:18.563Z (2 months ago)
- Topics: react, rust, solana, solana-program, solana-token, typescript
- Language: Rust
- Homepage: https://vesting.bonfida.org/
- Size: 8.82 MB
- Stars: 256
- Watchers: 15
- Forks: 169
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Audit: audit/Bonfida_SecurityAssessment_Vesting_Final050521.pdf
Awesome Lists containing this project
- awesome-solana - Bonfida Token Vesting - vesting.svg?style=social) A Vesting Contract for the Solana Blockchain (Code / Defi)
- awesome-solana-nfts-v2 - token vesting
README
Token vesting
Table of contents
1. [Program ID](#program-id)
2. [Audit](#audit)
3. [UI](#ui)
4. [Overview](#overview)
5. [Structure](#structure)Program ID
- mainnet: `CChTq6PthWU82YZkbveA3WDf7s97BWhBK4Vx9bmsT743`
- devnet: `DLxB9dSQtA4WJ49hWFhxqiQkD9v6m67Yfk9voxpxrBs4`Audit
This code has been audited by Kudelski ✅
- Audit report: [Bonfida Token Vesting Report](/audit/Bonfida_SecurityAssessment_Vesting_Final050521.pdf)
UI
The [Bonfida Token Vesting UI](https://vesting.bonfida.org) can be used to unlock tokens. The UI **only** works for vesting accounts using the mainnet deployment `CChTq6PthWU82YZkbveA3WDf7s97BWhBK4Vx9bmsT743`
Overview
- Simple vesting contract (SVC) that allows you to deposit X SPL tokens that are unlocked to a specified public key at a certain block height/ slot.
- Unlocking works by pushing a permissionless crank on the contract that moves the tokens to the pre-specified address
- Token Address should be derived from https://spl.solana.com/associated-token-account
- 'Vesting Schedule contract' - A contract containing an array of the SVC's that can be used to develop arbitrary- vesting schedules.
- Tooling to easily setup vesting schedule contracts
- Recipient address should be modifiable by the owner of the current recipient key
- Implementation should be a rust spl compatible program, plus client side javascript bindings that include a CLI- interface. Rust program should be unit tested and fuzzed.Structure
- `cli` : CLI tool to interact with on-chain token vesting contract
- `js` : JavaScript binding to interact with on-chain token vesting contract
- `program` : The BPF compatible token vesting on-chain program/smart contract![diagram](assets/structure.png)