Content pfp
Content
@
0 reply
0 recast
0 reaction

Aspyn pfp
Aspyn
@aspyn
I'm exploring allowing ppl to list and collect NFTs on smaller chains (ex. Degen, Ham) in a fully decentralized way, powered by Net I now have creating, reading, and fulfilling Seaport listings stored onchain via Net working on testnets ๐Ÿš€ I'll walk through how this works:
7 replies
3 recasts
8 reactions

Aspyn pfp
Aspyn
@aspyn
Let's start with posting a listing: The user will send a message on the Net dapp structured like "list <NFT collection> <token ID> for <price> <currency>" The Net dapp will then parse this message and call SeaportJS to create a Seaport order
1 reply
0 recast
0 reaction

Aspyn pfp
Aspyn
@aspyn
On generating a Seaport order, SeaportJS will prompt the user to sign the order Once signed, the user will be given the option to post the order onchain through the Bazaar contract Bazaar is a Net app that takes a signed seaport order as input and posts the order to Net
1 reply
0 recast
0 reaction

Aspyn pfp
Aspyn
@aspyn
Bazaar has three functions: 1. Perform validation to ensure the order is structured according to some rules 2. Generate a correctly structured Net message 3. Send the order as an onchain Net message using NFT token's address to derive the topic
1 reply
0 recast
0 reaction

Aspyn pfp
Aspyn
@aspyn
Specifically, this means we can trivially query all Bazaar-submitted Seaport orders for a given NFT token address This ensures that anybody, onchain or off-chain, can query Net to get all Bazaar-submitted Seaport orders for a given NFT collection
1 reply
0 recast
0 reaction

Aspyn pfp
Aspyn
@aspyn
Let's move on to the Read Listings flow: The Net dapp simply queries Net for all messages sent by the Bazaar Net app, optionally filtering on topic to only get orders for a particular NFT token address
1 reply
0 recast
0 reaction

Aspyn pfp
Aspyn
@aspyn
These orders are currently stored on Net in their JSON form but this will be cleaned up so that the order will live in the Net message data and the message text is more readable (e.g. "list dino 1 for 0.00042 ETH")
1 reply
0 recast
0 reaction

Aspyn pfp
Aspyn
@aspyn
Finally, let's walkthrough listing fulfillment: For a user to fulfill an order, the order is read from Net, parsed as a Seaport order in the Net dapp, and a fulfillment transaction is generated by SeaportJS Finally, the user is prompted to submit a transaction
1 reply
0 recast
0 reaction