Open .eth websites like any other,
verified locally.
A browser extension that resolves ENS names directly against Ethereum state via a light client, and serves the content from your own IPFS node. No public gateway. Nothing to trust in the middle.
The trust boundary belongs on your machine.
Typing name.eth in a browser usually meant trusting a
gateway like eth.limo. That was always the wrong trust
model.
dapp3 resolves ENS on your machine, verifies it with a Helios light client, and loads content from your own local IPFS node. No gateway. No shared DNS. No middleman.
How a .eth navigation works
Three local components. Everything the extension reads from the network, it verifies.
-
01
Intercept
The service worker catches the navigation to
*.ethbefore Chrome issues DNS. The browser never asks a public resolver where your ENS name points. -
02
Resolve & verify
A Helios light client, running inside an offscreen document, reads the ENS resolver's
contenthashviaeth_call. Every read is proof-checked against the beacon chain. The RPC you point it at is never trusted. -
03
Serve locally
The CID is loaded from your own Kubo node at
<cid>.ipfs.localhost:8080. Per-CID subdomains give every site its own browser origin, so cookies and storage stay isolated, just like on the public web.
What you get
Security properties and browser ergonomics, without introducing a new trusted middle layer.
No trusted gateway
Nothing between you and Ethereum. State reads are verified against the consensus-committed root by a light client on your device.
Your IPFS node
Content loads from the Kubo / IPFS Desktop node you already run. Nothing is ever fetched through a public gateway.
Origin isolation
Each site gets its own origin via CID-per-subdomain. Cookies,
localStorage, and service workers stay scoped to
one .eth site.
The real name, always
A minimal banner shows the ENS name you actually typed, even
though the tab's URL is pointed at localhost. No
spoofing surface.
Bring your own RPC
Point it at any mainnet RPC: Alchemy, Infura, your own node, whatever. Health is tracked per endpoint and you can swap at any time.
Install dapp3
You'll need IPFS Desktop (or kubo) running locally and
one Ethereum mainnet RPC URL. Onboarding walks you through both.
-
Browser
Chromium-based (Chrome, Brave, Arc, Edge). MV3.
-
IPFS
IPFS Desktop or Kubo running locally.
Subdomain gateway enabled onlocalhost -
RPC
Any Ethereum mainnet RPC. It's never trusted. Helios verifies everything.