Off-Chain Records Generator/Manager #3
Replies: 2 comments 4 replies
-
I think I should start building this. Our contract only makes sense if it has a client to manage records alongside. ENS + IPNS is small user base, so we have to compensate for that and try to master the UI/UX. ENSIP for off-chain records should feature both the contract and the client for maximum impact. If/when Tom arrives, we'll ask him the optimal path from his experience. Until then, I am gonna start building something with Node.js + Shell. I have all the pieces for the IPFS + IPNS pinning from |
Beta Was this translation helpful? Give feedback.
-
I have a question about the frontend implementation. I was thinking that we should have a list of names corresponding to an address like the ENS app: Users can then click on each name and set records for them. Getting all ENS names owned by an address is easy to find with most web3 providers but finding all addresses controlled/managed by an address is harder.
OR,
2 is easy but bad frontend design. 1 is hard. What do you think? List or no list? |
Beta Was this translation helpful? Give feedback.
-
.json generator process
User
connects
ETH wallet with 0xaddrEth domain :
a) User inputs their
sub/domain.eth
b) OR select one from a list of names owned/managed by 0xaddr.
Resolver Check
a) if domain.eth's resolver is ENSIP15: offchain records compatible
b) switch resolver if it's not compatible, <requires on-chain-tx>
IPNS Check
a) if there's NO IPNS contenthash set for domain.eth user have to input valid IPNS key
b) OR generate ENS specific deterministic IPNS keys using CAIP222 (check NIP-111).
c) add IPNS hash to resolver, use signed contenthash for extra security. <requires on-chain-tx>
Resolve old IPNS
a) read old records in ../.well-known/... as text/json and load in manager.
b) ? load all other files and manage with js-ipfs or let users download .well-known directory data as zip.
Records manager
a) ENS App like records manager with <Sign this record> button for each records.
b) generate json files for all records inside .well-known/eth/domain/<record>.json
c) add old files/index html profile.
d) upload to ipfs & pin, wait & resolve over 1+ ipfs gateways (js-ipfs + ipfs service)
e) publish ipfs hash under IPNS. (ipns services)
Beta Was this translation helpful? Give feedback.
All reactions