Wiki Page
Back to wiki homeENS Integration
Core principle
NFTFactory uses ENS as an identity layer, but the current build keeps a strict distinction between:
- names NFTFactory creates on-chain
- names the app only links and renders
What NFTFactory creates on-chain today
The only native ENS creation flow owned by NFTFactory contracts is:
- a subname under
nftfactory.eth
That flow is handled by SubnameRegistrar.
Example:
- input label:
studio - resulting name:
studio.nftfactory.eth
What the app links
The app can also work with:
- a freshly registered
.ethname created through the ENS controller flow in/profile/setup - an existing external ENS name such as
artist.eth - an existing external ENS subname such as
drops.artist.eth
These are product-level identity links. They are not names minted by NFTFactory contracts.
/profile/setup
/profile/setup supports:
- checking
.ethname availability - running the ENS controller commit/register flow for a fresh
.ethname when the controller env is configured - linking an existing external ENS name
- linking an existing external ENS subname
- creating a new
nftfactory.ethsubname on-chain
It does not create external ENS subnames on-chain.
Shared mint attribution
Shared mint contracts accept an optional NFTFactory subname label during publish.
Behavior:
- the creator can pass a label
- the shared mint contract attempts to call
recordMint - failure in attribution should not block the mint itself
Attribution is useful metadata, not a hard mint gate.
Limits
The build does not:
- mint arbitrary
.ethnames from NFTFactory contracts - manage external ENS parent domains
- turn linked external ENS names into on-chain NFTFactory-owned records