⚠️ Alpha · testnets only. ChainRender is in active alpha and deployed on testnets only — Ethereum Sepolia, the Robinhood Chain Testnet, and the Circle Arc Testnet — not on any mainnet. Contracts, addresses, and APIs may change. Do not use with real funds or production assets.
Concepts

What You Can Build

ChainRender scales from a single element to a full multi-view application. Understanding the levels helps you pick the right starting point. They're the same primitives at different scales — a bigger thing is a composition of smaller things.

1. Components

The atom. A single, self-contained UI element rendered from the vocabulary — a button, a card, a chart, an identity badge, a piece of generative art. A component:

  • compiles to a content-addressed hash,
  • renders from a free eth_call,
  • can bind live on-chain data and declare a safe action,
  • carries its own trust grade.

Build a component when you want one on-chain UI element — e.g. an on-chain tokenURI image, a live price badge, a claim button — that you can drop into an existing site or embed anywhere.

2. Mini-apps

A composition of components with its own identity. A mini-app is content-addressed, forkable (it records its parent on-chain), and has an aggregated capability envelope and grade. It's a self-contained, composable unit — the natural size for a focused tool (a swap widget, a governance vote card, a credential check).

Build a mini-app when you want a small, complete, shareable app that others can discover, use, and fork — and that composes into larger apps.

3. Standalone (multi-view) apps

A full application with multiple views and in-app navigation (tabs, wizard, master-detail, modal). A standalone app has a shell, several views, on-chain-enforced reachability (no stranded views), and a unified envelope across everything. This is a complete dApp frontend — canonical, un-spoofable, permanent.

Build a standalone app when you want a real product frontend — the flagship swap app (Quote / Venues / Route tabs) is exactly this shape.

4. Distributed forms

Any of the above can also be shipped as:

  • a Farcaster Mini App (via the miniapp adapter),
  • an on-chain NFT (tokenURI returns a ChainRender component),
  • an embedded widget (render the HTML into any page),
  • a web3:// served resource (ERC-5219/4804).

The app doesn't change to take these forms — it's the same on-chain component with a distribution wrapper.

How to choose

You want… Build a… Start with
One on-chain UI element Component create-chainrender → Single component (T1)
A focused, shareable tool Mini-app create-chainrender → Mini-app (T2)
A full product frontend Standalone app create-chainrender → DeFi app (T3)
Farcaster distribution any of the above + adapter create-chainrender → Farcaster Mini App

Everything composes: components → mini-apps → standalone apps. Start small, grow by composition — you never outgrow the model.

Related

DeFi dashboards & apps

A fully on-chain DeFi frontend: render a user's LP and lending positions (including health factor / liquidation risk), live prices, pre-trade quotes, and portfolio totals — then let them swap, approve, deposit, or claim via decoded actions. Rendering is a free view; only signing an action costs gas. See DeFi Capabilities for the complete guide.

Apps with payments (incl. non-native users)

Add a payment to any app with the crypto payment as the trustless floor and an optional card/fiat on-ramp as an honestly-graded off-chain enhancement — so users without crypto can still pay by card while the on-chain guarantee is never overstated. Combined with an embedded-wallet SDK (email login → invisible wallet) and a paymaster (sponsored gas), non-native users can onboard end to end. See Payments.

RWA (real-world asset) dashboards

A fully on-chain frontend for tokenized real-world assets: render Proof-of-Reserve coverage (reserves vs. supply), ERC-3643 (T-REX) compliance state (verified / frozen / can-transfer), and issuer-bound credential lifecycle (valid / expired / revoked) — each honestly graded, and compliance shown, never enforced by ChainRender. The reserve read is Grade A; a compliance verdict is a faithful render of a mutable authority (≤ C), labeled as such. See RWA Capabilities.

Reputation & social apps

Render an address's on-chain reputation: its EFP social graph (does this list follow / tag / block / mute a target — forward reads, Grade A), delegated vouches under a caller-chosen topic (rep-vouch / a transparent k-of-n rep-tally), and a cross-source aggregate (rep-aggregate) whose grade is capped at its weakest input. ChainRender reads and renders reputation — it never mints a score, ranks addresses, or blesses an attester. Follower counts and reverse lookups are off-chain (indexer) and graded ≤ C, never presented as an on-chain fact. See Reputation Capabilities.

Identity & profile apps

Build an identity UI over live on-chain sources: ENS profiles (forward-verified reverse resolution, records, ENS-v2), EAS attestations, ZK selective-disclosure credentials (member-of-set, bound single-use), and ERC-725Y / ERC-735 account claim reads (the standard behind LUKSO Universal Profiles) via staticread today — read against a co-located account (same chain the resolver is deployed on); a typed reader is planned. LUKSO's own chain is not integrated as of now — a live LUKSO Universal Profile would require ChainRender deployed on LUKSO; today's reach is same-chain ERC-725Y/735 accounts. Owned/mutable identity sources render as "the current claim of authority Y" (≤ C), never as proof — the honest boundary throughout. See Reputation Capabilities and Privacy & Credentials.