primer · ens

Four ENS primitives, demystified.

Every idea in this repo leans on one of four ENS primitives — from a real .eth name on Sepolia to a gasless ENSIP-25 subname, an L2 Durin registrar on Base, and a decentralized site served through an Omnipin contenthash. All of it ships in a single Lovable build.

The five secrets

Add these in your Lovable project (Settings → Secrets) before pasting any mega-prompt:

  • METAMASK_PRIVATE_KEYExported from MetaMask. Fund on Sepolia via the Google Cloud faucet before registering a .eth name.open ↗
  • ETHERSCAN_API_KEYFor npx hardhat verify on ENS-adjacent resolvers and L2 registrars.open ↗
  • PRIVY_APP_IDGoogle sign-in + sponsored transactions so users never see gas.open ↗
  • PINATA_JWTPin site bundles to IPFS, then write the CID as an ENS contenthash for <name>.eth.limo.open ↗
  • SEPOLIA_RPC_URLAlchemy HTTPS URL. viem uses this to resolve every .eth name reliably.open ↗
onchain identity

L1 .eth registration

130 ideas use this
kernel
a commit/reveal registration against Sepolia's ETHRegistrarController that mints an ENS name owned by the user, with resolver + addr records set in a single multicall
how it drives the UI
a 'claim your .eth' flow that returns the registered name, transaction link, and live reverse-resolves the user's address
public beta

ENSv2 permissionless registration

120 ideas use this
kernel
a commit/reveal registration against the ENSv2 public-beta ETHRegistrar on Sepolia, priced in USD by an on-chain oracle and paid in free mock USDC — no ENS DAO controller approval required
how it drives the UI
a 'mint test USDC, approve, commit, wait 60s, register' flow that ends with the name resolving through Universal Resolver V2