GM Optimists, I’m Cap, the founder of Namespace. I’m writing to report on our progress and show what we’ve done so far.
We received an OP Grant from Season 5, Cycle 19, to scale ENS to OP and enable easy ENS Subname integration for other projects and dapps on OP.
Feedback is appreciated and possibly some devs using and testing our infrastructure for minting and managing Subnames on OP.
Namespace intro
In a nutshell, Namespace helps teams and individuals to easily integrate ENS into their dapps, and start issuing .eth names or subnames to their users / community. We build dev tools for developers and a user-friend app (app.namespace.tech) for individual ENS name owners, to easily issue Subnames. Namespace is also one of the 9 official ENS Service Providers taking the lead on partnerships, integrations, and building tools and apps that help streamline ENS adoption!
Proposal Summary
The goal of the project is to enable minting ENS subnames on Optimism with Fault proof verification. This is achieved by utilizing the CCIP protocol, which allows storing ENS subnames and records on L2 chains. The chains are resolved through an offchain gateway application, which verifies the stored data. Furthermore with the introduction of the EVM Gateway by ENS, the data can be stored and verified trustlessly, meaning that the Gateway cannot manipulate the data.
Milestones overview
- Integrate CCIP (EVM Gateway)
- Deploy Minting and Listing contracts on OP
2.1 Testnet
2.2 Mainnet - Audit
- Write developer documentation for easy integration
- Integrate new OP Contracts with the Namespace platform (only testnet)
- Completion, User Testing User adoption + Feedback loop for improvement
- Launch the code and initiate OP expansion
Milestone 1
The overview of the architecture that outlines the implementation of the CCIP protocol using the EVM Gateway and fault proofs:
In the CCIP architecture the clients, such as wallets, need to be able to support CCIP, which requires handling the callback response from the resolver contract. For our project, we have implemented the OpVerifierResolver contract using the EVM Verifier from Unruggable by @nxt3d. We have also utilized the gateway library from Unruggable in order to fetch L2 proofs. Once the proofs are passed back to the client, the client will make the callback call back to OpVerifierResolver and get the verified result.
Milestone 2
Use case for listing and minting opsubs.eth subnames on Optimism Sepolia, and resolving subnames on L1 Sepolia.
L1 Contracts deployed on Sepolia
- OPFaultVerifier (contains the link to the EVM Gateway and helps with constructing the request for storage slots on OP)
- OpVerfierResolver (the resolver contract which references OPFaultVerifier)
Minting and listing
- opsubs.eth listed on Optimism Sepolia
- mysub.opsubs.eth minted on Optimism Sepolia, also setting the address record
- The resolver updated with the OpVerifierResolver address
- The address record now resolves to the address set in the second step above, utilizing the CCIP resolution process, which allows the client to call the gateway to fetch the verifiable data from L2.
Milestone 3
We are in the process of hiring an auditing company to audit our implementation for minting subnames on Optimism and Base.
Milestone 4
We have started writing developer documentation for our SDK. The SDK is a TypeScript library built to simplify the integration of ENS Subname registrations into Web3 projects. It provides developers with a simple way to interact with Namespace’s backend APIs and smart contracts.
The primary intention for the SDK is to streamline the ENS integration and Subname issuance on different L2 chains (Base, Optimism, etc.).
You can read more about it on our official Namespace Docs.
Milestone 5
Currently, we are refactoring our backend to create new endpoints just for listing and minting subnames on the Namespace app (app.namespace.tech), configured through the Manager, which will include both our existing L1 subname functionality, as well adding the support for L2 subnames.
Asks
We’d love to have some builders integrate ENS into their dapps and issue Subnames on OP for their users / community.
If interested, please join our Namespace Dev TG group for convenience, assistance, and vibes.
Contact info
Cap: TG or Twitter: @thecaphimself
Namespace
- Website: https://www.namespace.tech/
- Docs: https://docs.namespace.tech/
- Github: Namespace · GitHub
- X: x.com
- Farcaster: Warpcast account or Warpcast channel