Turns an ENS into a verified artist profile with featured works and an ENSIP-25 curator guide.
Proof of Artist is a Web3-native “artist proof page” generator that turns an ENS name into a public, shareable status page. Instead of acting like a generic portfolio/linktree, it focuses on verifiable identity signals:
The project is built with Next.js App Router, TypeScript, Tailwind CSS, and Viem for Sepolia ENS resolution. The core flow starts from the Home page, where users enter an ENS name and are routed to the dashboard. The Dashboard resolves the ENS name on Sepolia, then lets the artist add official contracts, a statement, a curator pitch, and an agent ID for the registry demo. These settings are stored locally per ENS name for a fast hackathon demo. The public proof page shows the artist identity, metrics, contracts, curator label, and ENSIP-25 agent claim block. The curator page shows the agent claim block and chat UI. ENS integration creates a Sepolia public client with ENS resolver support, resolves the address and avatar, and reads public text records such as display name and social handles. Demo art metrics are generated from the official contract list, with a UI banner clearly marking them as mock/demo data. The curator chat sends messages and context to an API route, which returns mock replies when no AI provider key is configured, or calls an AI model when a key is available, using a system prompt that includes the artist ENS, statement, contracts, mock metrics, and ENSIP-25 status. ENSIP-25 verification is implemented as a Sepolia demo using the text record format agent-registration[<registry>][<agentId>], where <registry> is the ERC-7930 interoperable address of the registry. The implementation encodes the Sepolia registry identifier, constructs the ENSIP-25 text key, checks that the registry record claims the current ENS name, and confirms that the ENS text record is non-empty. The registry record can come from either a deployed testnet registry contract or a local demo registry row. A verification API endpoint exposes this result to the UI, and the agent claim component renders the verification status plus the exact key/value needed to complete verification. This minimal registry setup demonstrates the ENSIP-25 verification mechanics without implementing the full ERC-8004 standard.

