Skip to main content

The dApp

The reference dApp is a thin, read-what-you-sign interface over the contracts. It reads live state from chain and executes real trades through the CovenantRouter — there is no backend and no custody.

Pages

PageWhat it shows
OverviewThe hero, live KPIs (active covenants, exit debt, absorption rate, locked liquidity), and a plain-language explainer of the hook.
TradeBuy/sell through the hook, with a live breakdown of tax, retention, absorption, and discount.
CovenantsThe live covenant queue read from chain.
LiquidityThe locked liquidity created by expiries.
RiskThe hook parameters and risks, straight from the contracts.
DocsThis documentation.

How addresses and ABIs are wired

The dApp does not hardcode addresses. Contract addresses and ABIs are generated from the compiled backend artifacts by an export script (backend/script/export-frontend.mjs) into a deployments.json the app reads at runtime. Regenerate it after any deployment rather than editing addresses by hand.

The app is pinned per network: writes are sent with an explicit chainId, it detects a wrong network and offers a one-click switch, and it prefers the most relevant deployed chain automatically.

Trading, briefly

  • Buy shows whether your ETH will absorb covenant debt (and at what discount) or run as a plain pool swap, plus the fixed 3% ETH tax.
  • Sell shows the split — retained as covenant vs sold to the pool vs the 3% tax — and marks the expiry window on the covenant it creates.

For step-by-step trading, see the Quickstart.