Anderdzi (ანდერძი) is the Georgian word for testament — a final declaration of your wishes, meant to outlast you. We built this because self-custody shouldn't end when you do.
Live on Solana Devnet: anderdzi.xyz
Program ID: HqAguZH2aj1sSc4Zi6Ck1MBV1bpz1z4cyZUnYT3bTztN
Anderdzi is a self-custody inheritance protocol on Solana. Deposit SOL into a secure vault, designate beneficiaries with percentage splits, and set an inactivity period. If you stop using crypto and miss your reminders, the vault automatically distributes your assets to your heirs.
Your assets earn yield while they wait. As long as you're using Solana normally, Anderdzi stays completely silent.
- Create a vault — set your inactivity period, designate beneficiaries with percentage splits, and optionally make an initial deposit
- Update anytime — adjust beneficiaries, deposit or withdraw SOL, opt in/out of the watcher
- Assets earn yield — opt-in staking via Marinade Finance (enable/disable anytime)
- Anderdzi watches quietly — monitors your on-chain activity, resets the timer automatically
- If you go dark — Telegram notifications with a direct check-in link
- If the trigger fires — grace period, final alert, then automatic proportional distribution
anderdzi/
├── programs/anderdzi/ # Anchor smart contract (Rust)
│ └── src/
│ ├── lib.rs # Program entrypoint
│ ├── state.rs # Account structures
│ ├── errors.rs # Custom error codes
│ ├── marinade.rs # Marinade Finance CPI adapter
│ └── instructions/ # One file per instruction
├── bot/ # Off-chain bot: executor, watcher, notifier (Rust)
│ └── src/
│ ├── main.rs # Orchestrator and poll loop
│ ├── common.rs # Shared types and helpers
│ ├── executor.rs # Automatic trigger & distribution
│ ├── watcher.rs # On-chain activity monitoring
│ ├── notifier.rs # Telegram notification sender
│ ├── api.rs # HTTP API for registration
│ └── db.rs # SQLite storage
├── app/ # React frontend (Vite + React + TypeScript + Tailwind)
├── Anchor.toml
└── Cargo.toml
| Layer | Technology |
|---|---|
| Smart contract | Anchor 0.32, Rust |
| Bot (executor/watcher/notifier) | Rust, solana-client, axum, rusqlite |
| Frontend | React 18, TypeScript, Vite, Tailwind CSS v4, Zustand, TanStack Router |
| Wallet connection | Solana Wallet Adapter |
| Yield | Marinade Finance |
| Hosting | Vercel (frontend), Solana Devnet (program) |
- Rust 1.75+
- Anchor CLI 0.32.1
- Solana CLI 1.18+
- Node.js 18+ and npm
git clone https://github.com/sw10pa/anderdzi
cd anderdzi
npm install # Anchor test dependencies
cd app && npm install # Frontend dependenciesanchor buildanchor build
cargo test # Rust unit tests
anchor test # Integration tests (LiteSVM)cp bot/.env.example bot/.env
# fill in SOLANA_RPC_URL, WATCHER_KEYPAIR_PATH, PROGRAM_ID
# optionally set TELEGRAM_BOT_TOKEN for notifications
cargo run --bin anderdzi-botcd app
cp .env.example .env # set VITE_RPC_URL and VITE_BOT_API_URL
npm install
npm run dev # opens at http://localhost:5173Or visit the live deployment at anderdzi.xyz.
Stepane Gurgenidze — Software Engineer Luka Karzhalovi — Software Engineer
Built for the Colosseum hackathon.