$APPREESH: The Token of Gratitude

Back to Home

Solana Edition · Version 2.1 (September 2025)

Abstract

$APPREESH turns “thanks” into a first-class on-chain action. Each tribute moves fast (Solana), costs little (Token-2022), and splits cleanly: most flows to a chosen recipient, and a small slice is redirected into a community vault. The vault has two futures: a verified Chad can claim the stoke, or the DAO sweeps the idle funds toward causes that raise the collective vibe. No affiliation, no endorsement — just measurable appreciation. Not a bet. A gesture with gravity.

Purpose

  • Celebrate signal boosters and reward those who lift the vibe.
  • Encode appreciation so that gratitude stays cheap, expressive, and programmable.
  • Route unclaimed value into public good when tributes go unclaimed.

Architecture Overview (Anchor / Solana)

$APPREESH ships as two composable Anchor programs that ride on the Token Interface so they can speak SPL or Token-2022 with equal ease.

1. Tribute Router — appreesh_hook

Splits each tribute from sender to recipient plus vault and raffle cuts. Interface is Anchor + anchor_spl::token_interface so the same code rides with Token-2022 or classic SPL.

Core PDA & accounts

  • Config PDA (AppreeshConfig) — one per mint.
  • authority: Pubkey — governance or steward.
  • mint: Pubkey — SPL or Token-2022 mint used for tributes.
  • vault: Pubkey — token account receiving the vault cut.
  • raffle_pot: Pubkey — token account receiving the raffle cut.
  • fee_bps: u16 — fee in basis points (max 2000 = 20%).
  • max_pct: u16 — cap vs balance (max 10_000 = 100%).
  • min_tribute: u64 — fee floor in base units.
  • rebate_bps: u16 — portion of fee rebated to sender.
  • raffle_cut_bps: u16 — portion routed to raffle pot.
  • small_gift_threshold: u64 — tributes at or below skip fees.
  • opt_out_enabled: bool — allows fee opt-out when enabled.

Instruction set

  • initialize — create config.
  • tribute — split tribute using vault and raffle logic.
  • gift — optional direct transfer bypassing fees.
  • update_config — authority updates parameters.

2. Appreciation Vault — appreesh_vault

Escrows a single balance until the stoke is claimed. If the verified Chad steps forward before the deadline, the vault releases to them. Otherwise the DAO sweeps the funds after the deadline.

Key accounts

  • Vault PDA — stores mint, authority, verified Chad, DAO, and deadlines.
  • Vault Signer PDA — signs outgoing CPIs for transfers.
  • vault_ata — token account owned by vault signer.
  • chad_ata — destination if Chad claims.
  • recipient_ata — DAO destination on sweep.

Seeds

  • vault PDA: [“vault_state”].
  • vault_signer PDA: [“vault_signer”, vault.key()].

Roadmap: graduate to per-mint seeds such as [“vault_state”, mint, verified_chad] so many vaults can coexist.

Tokenomics (v1 Solana)

  • Name: Appreesh Token
  • Symbol: $APPREESH
  • Standard: SPL / Token-2022 compatible
  • Decimals: 9
  • Supply: Mint-controlled; programs do not mint

Tribute math inside appreesh_hook enforces balance caps, fee floors, and raffle splits. All transfers use transfer_checked CPI via Token-2022 to respect decimals and program IDs.

cap = sender_balance * max_pct / 10_000
require amount <= cap

if opt_out_enabled && sender_opt_out:
    fee_total = 0
else if amount <= small_gift_threshold:
    fee_total = 0
else:
    fee_raw   = amount * fee_bps / 10_000
    fee_total = max(min_tribute, fee_raw)
    fee_total = min(fee_total, amount)

# Split fee_total:
rebate   = fee_total * rebate_bps / 10_000      # stays local, not moved
raffle   = fee_total * raffle_cut_bps / 10_000  # to raffle_pot ATA
to_vault = fee_total - rebate - raffle          # to vault ATA

to_recipient = amount - fee_total

Example: fee_bps = 100 (1%), max_pct = 1000 (10%), min_tribute = 10_000, rebate_bps = 0, raffle_cut_bps = 500 (5%), small_gift_threshold = 0. Sender balance = 1,000 APPREESH so the cap is 100. If amount = 100, fee_raw = 1 and fee_total is lifted to 10_000 base units. Fee split: rebate 0, raffle 0.05, vault 0.95. Recipient receives 99.

Appreciation Vault — Instruction Specs

initialize(verified_chad, dao, claim_deadline)

Requires claim_deadline greater than the current clock. Sets authority, mint, vault_ata, verified_chad, dao, deadline, and bumps.

set_authority(new)

Authority rotation guarded by the existing authority.

claim()

Guards ensure !claimed, now <= deadline, and all PDAs match. Transfers full balance to Chad and flips claimed = true.

sweep_after_deadline()

Requires !claimed and now greater than deadline. Sends the balance to the DAO's ATA and sets claimed = true.

Security Posture

  • Authority separation ensures Chad can only claim before expiry and the DAO can only sweep after.
  • Bound ATAs pin mint and authority via Anchor constraints.
  • Program signed outflows use vault_signer PDA seeds.
  • Claimed flag latches on payout to prevent replay.
  • Clock sysvar gates claim windows; no arbitrary recipients or partial withdrawals.

Legal, Testing, and Governance

Legal & Ethical

  • No endorsement; not affiliated with Chad Goes Deep.
  • Not a security. Meme mechanics, no profit promises.
  • Stewardship: keep authorities in a DAO or multisig.
  • Charity guardrails: governance directs unclaimed funds.

Testing & Verification

  • Localnet: run solana-test-validator -r, anchor build, anchor test.
  • Tests cover config init, tribute math, vault flows, and param updates.
  • Devnet sanity: initialize config, run tributes, accrue vault fees, exercise claim and sweep.

Governance — Stoke Protocol DAO

Authority lives with a multisig (Squads, Realms, etc). Powers include fee tuning, minimum tributes, vault rotation, donation targets, and program upgrades. Guiding question: does this raise the collective stoke?

Roadmap

  1. Phase I — Genesis: Tribute Router spec and parameters, Appreciation Vault live, test plans and runbooks.
  2. Phase II — Spread the Vibes: DAO authority by default, web dashboard with leaderboards and flows.
  3. Phase III — Identity Claim: Chad Claim add-on with signature attestation.
  4. Phase IV — Donation Rails: On-chain voting and proof-of-donation receipts.
  5. Phase V — USD Tribute: Oracle routed invariant with a $0.02 minimum tribute.

Developer Notes

  • Set program IDs with declare_id! and Anchor.toml consistently.
  • Prefer Token-2022 end to end.
  • Wallet SDK should derive PDAs, compute safe tribute amounts, and build instructions with preflights.
  • Helpers: find program addresses for vault and signer PDAs before sending tributes.
const [vault] = PublicKey.findProgramAddressSync(
  [Buffer.from("vault_state")], programId
);
const [vaultSigner] = PublicKey.findProgramAddressSync(
  [Buffer.from("vault_signer"), vault.toBuffer()], programId
);

Appendix

Vault State (IDL excerpt)

#[account]
pub struct VaultState {
    pub authority:      Pubkey,
    pub mint:           Pubkey,
    pub vault_ata:      Pubkey,
    pub verified_chad:  Pubkey,
    pub dao:            Pubkey,
    pub claim_deadline: i64,
    pub claimed:        bool,
    pub state_bump:     u8,
    pub signer_bump:    u8,
}

Tribute Parameters (IDL excerpt)

  • fee_bps — fee routed to vault (<= 2000).
  • max_pct — cap vs balance (<= 10_000).
  • min_tribute — fee floor (base units).
  • rebate_bps — rebate portion (<= 10_000).
  • raffle_cut_bps — raffle portion (<= 10_000).
  • small_gift_threshold — no-fee cutoff.
  • opt_out_enabled — global toggle for opt-outs.
  • vault — vault ATA.
  • raffle_pot — raffle ATA.
  • authority — governance.

Security Notes

  • Use Token-2022 consistently.
  • Keep min_tribute sane relative to decimals to avoid dust.
  • Set fee_bps <= 2000, max_pct <= 10000, rebate_bps <= 10000, raffle_cut_bps <= 10000.
  • Treat authority and upgrade authority as crown jewels with multisig or timelocks.
  • Rotate vaults if compromise is suspected.

Conclusion

On Solana, gratitude travels at the speed of a smile: near instant, near free, and remixable. $APPREESH is not a pump; it is a pulse. Each tribute is a note in a public chord, and each vault is a promise kept — if it is for you, it finds you; if not, it funds the vibe.

Legal disclaimer: $APPREESH is community-driven. It is not issued by or affiliated with Chad Goes Deep. It is not a security, commodity, or investment product. The Appreciation Vault is stewarded by on-chain authority that may be a DAO; unclaimed funds may be routed to charitable causes via governance. Use responsibly and vibe sustainably.