Wift.finance
Inspired by pendle mechanism, Wift splits XRPL lending vault shares into tradable Principal and Yield tokens, bringing fixed-rate markets and on-chain credit curves to the ledger for the first time.
Demo Video
Project Information
At a Glance
Inspired by pendle mechanism, Wift splits XRPL lending vault shares into tradable Principal and Yield tokens, bringing fixed-rate markets and on-chain credit curves to the ledger for the first time.
Description
XRPL just shipped native credit: vaults (XLS-65) and lending brokers (XLS-66). You deposit into a vault, a broker originates loans, you earn interest. Simple enough — except you're locked until maturity. No exit, no price discovery, no way to compare one broker against another. We built the missing piece. Wift takes a single vault share and splits it into two tradable tokens. A Principal Token (PT) that pays you back your deposit at maturity, and a Yield Token (YT) that gives you whatever yield the vault earned above par. Both trade on the native XRPL order book against XRP. The PT price is literally the market's implied fixed rate — buy PT at 0.95, hold to maturity, get 1.00 back. Done. The YT is the other side: cheap, leveraged, worth something only if the broker actually performs.The core rule is dead simple: for every share locked in our wrapper, exactly one PT and one YT exist. shares_locked = PT_supply = YT_supply, always. This is enforced by a 3-of-5 multisig of independent signers that refuse to sign anything that would break the count. No inflation, no partial backing. Where it gets interesting is the credit curve. We seed three brokers — safe, medium, risky — each with different cover requirements. The market animator walks PT prices down at different rates per broker. When you plot implied YTM against maturity for each broker, you get three distinct curves stacked by risk premium. That's a real-time, on-chain credit term structure. It doesn't exist on XRPL today. Banks pay Bloomberg terminals for this. We built it from native primitives in a weekend.
The whole thing runs on a local standalone rippled with amendments force-enabled. Every transaction is real — VaultCreate, LoanBrokerSet, VaultDeposit, the multisig split, OfferCreate on the DEX. No mocks, no stubs, every tx hash is verifiable. The dashboard polls the ledger every 2 seconds and reconstructs the full protocol state in Postgres.
We split the frontend into a marketing landing page and a protocol app. The landing explains PT/YT with
scroll animations and has full Learn + Docs sections. The app has live markets with expandable series detail,
a mint flow that submits real multisig transactions, a trade interface with Pendle-style price charts (time
range tabs, dual-axis YTM overlay, volume histograms), redemption with three-path math (full, PT-only, YT-only), portfolio tracking, and an on-chain explorer.
Wallet connection supports GemWallet and Crossmark browser extensions, plus a one-click "create fresh wallet" that generates a seed client-side and funds it from genesis. The demo runs end-to-end in under 3 minutes. When XLS-101d smart contracts land on XRPL, the wrapper migrates from multisig to a ContractCall. Trust assumption drops to zero, existing PT/YT holders are unaffected. The architecture was designed for this from day one.
Technical Details
XRPL-native yield stripping protocol. Vault shares (XLS-65 MPT) are locked in a 3/5 multisig pseudo-account that issues PT and YT as hex-40 IOUs. Trades happen on the native DEX via OfferCreate (AMMCreate rejects MPT). A market animator walks PT best-ask prices per broker risk tier to produce a live credit curve.
Backend: Python polling indexer hits rippled JSON-RPC every 2s, rebuilds NAV/YTM/wrapper state in Postgres,
exposes FastAPI REST endpoints (/series, /curve, /observations). Runs on rippleci/rippled:develop with XLS-65/66/MPT/Batch force-enabled via [features].
Frontend: Next.js 16, Tailwind v4, framer-motion. Live-polls the indexer, supports GemWallet + Crossmark wallets. Custom SVG charts with time-range tabs and dual-axis.
Team
2Alban Derouin
Arthur BARRAINE
Hackathon
HACK THE BLOCK 2026 Paris Blockchain Week XRPL Hackathon
Duration
Apr 11, 6:30 AM - Apr 12, 6:00 PM UTC