Guide: Serving via web3://
ChainRender apps can be served through the web3:// protocol (ERC-5219 + ERC-4804) — an ownerless, on-chain
way to serve content addressable by a web3:// URL, no HTTP server involved.
What it is
ERC-4804 defines web3:// URLs that resolve to on-chain contracts; ERC-5219 defines how a contract returns a web
response. Together they let a ChainRender app be fetched by a web3://-aware client (browser extension, gateway)
directly from the chain — the on-chain analog of an HTTP GET, with no server.
Why it matters
It's the distribution side of "no hosting": not only is the app stored on-chain, it can be served on-chain too,
addressable by a stable web3:// URL. Combined with content addressing, the URL points at immutable, verifiable
content.
Using it
Your app's render output is exposed through the web3:// serving path; a web3://-capable client fetches it like a
normal resource. The app is unchanged — this is a serving/distribution wrapper over the same on-chain component.