https://github.com/me-foundation/vetoken
VeToken is an open source vote escrow based simplified solana staking program for any Tokenk or Token22.
https://github.com/me-foundation/vetoken
governance solana staking
Last synced: 4 months ago
JSON representation
VeToken is an open source vote escrow based simplified solana staking program for any Tokenk or Token22.
- Host: GitHub
- URL: https://github.com/me-foundation/vetoken
- Owner: me-foundation
- License: apache-2.0
- Created: 2024-04-21T06:50:54.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2025-10-21T07:05:51.000Z (8 months ago)
- Last Synced: 2026-01-16T05:31:27.914Z (5 months ago)
- Topics: governance, solana, staking
- Language: TypeScript
- Homepage:
- Size: 726 KB
- Stars: 4
- Watchers: 1
- Forks: 6
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VeToken
VeToken is an open source vote escrow based simplified solana staking program for any Tokenk or Token22.
| Network | Program Address |
| ------- | ------------------------------------------- |
| Devnet | veTbq5fF2HWYpgmkwjGKTYLVpY6miWYYmakML7R7LRf |
| Mainnet | veTbq5fF2HWYpgmkwjGKTYLVpY6miWYYmakML7R7LRf |
# Architecture

The endpoints' detailed explanation can be found at [lib.rs](./programs/vetoken/src/lib.rs).
# Features
- Simplified Lockup structure with different voting power & rewards multiplier support.
- Proposals and Proposal votes are based on the voting power of the lockup.
- Stake and StakeTo with different rewards settings.
- Security Council and Review Council governance model.
- Distribution
# Development
**Inside the tests, there is a setupCloneAccounts function, however solana devnet will re-claim rent (and hence delete) from inactive accounts. You may need to manually airdrop devnet SOL to the accounts first so that cloning is successful**
```zsh
# Make sure you have the correct anchor and solana version installed, e.g:
avm install 0.29.0
sh -c "$(curl -sSfL https://release.anza.xyz/v1.18.11/install)"
# Test build and running the bankrun tests
npm i
anchor build && npm run test -- run
# Production build
anchor build
# Update IDL (if there's any IDL change)
anchor run update_idl
```
# IDL
- [IDL - vetoken.json](./src/idl/vetoken.json)
- [Types - vetoken.ts](./src/types/vetoken.ts)
# License
Apache 2.0