• Stars
    star
    254
  • Rank 160,264 (Top 4 %)
  • Language
    Rust
  • License
    Other
  • Created almost 4 years ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Vesting Contract for the Solana Blockchain

Token vesting




Table of contents


  1. Program ID
  2. Audit
  3. UI
  4. Overview
  5. Structure

Program ID


  • mainnet: CChTq6PthWU82YZkbveA3WDf7s97BWhBK4Vx9bmsT743
  • devnet: DLxB9dSQtA4WJ49hWFhxqiQkD9v6m67Yfk9voxpxrBs4

Audit


This code has been audited by Kudelski βœ…


UI


The Bonfida Token Vesting UI 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

More Repositories

1

dex-v4

Orderbook-based on-chain SPL token swap market
Rust
99
star
2

agnostic-orderbook

Rust
79
star
3

solana-name-service-guide

Small guide to the Solana name service
43
star
4

bonfida-utils

Collection of different utilities in use across various Bonfida projects
Rust
41
star
5

swap-ui

Minimal swap UI
TypeScript
35
star
6

bonfida-bot

Rust
33
star
7

messaging-app

Rust
31
star
8

sns-sdk

Solana Name Service SDKs monorepo
TypeScript
30
star
9

name-tokenizer

Tokenize a domain name into an NFT
Rust
30
star
10

vault-watcher

An easily deployable service to monitor mission-critical SPL token accounts
Rust
29
star
11

messaging-mobile-app

TypeScript
22
star
12

sns-deploy

JavaScript
18
star
13

bonfida-bot-ui

TypeScript
15
star
14

agnostic-candles

Fetch and serve tradingview candles for any AOB and Pyth markets
Rust
12
star
15

name-resolver

Solana name service resolver in browser
TypeScript
10
star
16

python-wrapper

Python wrapper for Bonfida's API
Python
8
star
17

audaces-perps-ui

TypeScript
7
star
18

serverless-merch

Easily create and distribute merch to your community without any backend server
TypeScript
7
star
19

sns-manager

All-in-one tool for SNS
TypeScript
6
star
20

metaplex-vulnerability-012022

short write-up of a metaplex vulnerability
Rust
6
star
21

audaces-perps-rest-server

TypeScript
3
star
22

genesys-go-auth

Tutorial to set up a cloudflare worker for Genesys Go OAuth
JavaScript
3
star
23

bonfida-bot-docs

bonfida-bot-docs
HTML
3
star
24

token-registry-program

Rust
3
star
25

sns-ip

SNS Protocol Improvement Proposal (SNS-IP) Repository
3
star
26

sub-registrar

Allow the registration of subdomains through a community owned smart contract
Rust
2
star
27

code-examples

Rust
2
star
28

quicknode-jwt-tutorial

Tutorial to set up a cloudflare worker for Quicknode JWT
TypeScript
2
star
29

sns-categories

Rust
2
star
30

bonfida-dev-guide

1
star
31

sns-quicknode

Rust
1
star
32

test_native_pgrtest

Rust
1
star
33

sns-widget

Solana Name Service (SNS) domains registration widget
TypeScript
1
star
34

batch-resolver

Minimal UI to resolve Solana domain names in batch
TypeScript
1
star