kames.eth 🌐 Web3 of Trust Profile picture
Aug 16, 2022 β€’ 6 tweets β€’ 3 min read β€’ Read on X
🎨ERC721K: Dynamic On-Chain Images and Metadata

A new framework for constructing, rendering and evolving NFTs (ERC721) using composable SVGModules and real-time DataStreams.

Code: github.com/erc721k
1/ SVGRegistry

The magic happens here. Custom `bytes` instructions are relayed between the NFT<>Registry<>Module instances.

1. NFT encodes dynamic instructions
2. Registry relays encoded message
3. Modules decode/parse instructions

Encoded instructions in πŸ”Ό dynamic SVG out πŸ”½
2/ SVGModules

Modules contain SVGs, SVGElements and DataStreams (balanceOf, delegatedAmount, ENS, etc...) and can be called by any ERC721K instance.

NFT Artists/Designers can share on-chain assets! Have an interesting design pattern? Module. Unique data stream? Module.
3/ DataStreams

Data is everywhere on-chain. DataStreams wrap any public smart contract method with a ERC721K data adapter interface.

Want to fetch ENS profile information? Done. Delegated chance on PoolTogether ptTokens? Easy.

Pick a source. Write adapter. Stream NFT traits.

Demo contracts with dynamic emoji characters wrapped in <svg><text></text/></svg> elements.

What's next? Partnerships 🀝 to build the core catalog of SVGModules that communicate with popular DeFi and DAO protocols.

If you are interested in a partnership you can reach me through the contact form below πŸ‘‡


β€’ β€’ β€’

Missing some Tweet in this thread? You can try to force a refresh

Keep Current with kames.eth 🌐 Web3 of Trust

kames.eth 🌐 Web3 of Trust Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!


Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @KamesGeraghty

Nov 18, 2022
The Delegatable framework (architected by @danfinlay + @AFDudley0) documentation is officially live.


Took me way too long (to play my small part) and help write the documentation, but they're finally done and excited to share with other Web3 developers.
The Delegatable framework is incredibly powerful. Including a number of battle-tested features, plus introducing entirely new concepts.

- Caveat Enforcers
- Meta-Transactions
- Nonce Queues
- And more...

IMHO it has the potential to transform the Web3 user experience entirely.
Why? Transaction Execution Conditionals.

Transactions can be limited by timestamp, blockNumber and/or any other on-chain conditional. Sooo what? We have that already, right?

No...Not like this. Delegatable is a framework for composing *sets* of infinitely complex conditionals.
Read 8 tweets
Aug 19, 2022
Did a deep-dive into the @ceramicnetwork stack yesterday; inspired by @OrbisClub codebase.

What I learned πŸ‘‡

The DID DataStore is simple and powerful. It solves a big problem. Exactly where IPFS and others fail.

πŸ†” A scalable Web3 Identity Hub

developers.ceramic.network/tools/glaze/di… Image
The DID Datastore is Ceramic MiddleWare that implements IDX. In short, this allows a User to have a single, easily queryable Decentralized Identifier.

The User controls it, but developers can recommend schemas, rules and data structures. A radical departure from current models.
Why is this interesting?

1) It's a growth first mindset. Off-chain cryptography is well suited for large and emergent social graphs; with privacy included as a default. Blockchains probably not so much.

2) It gives User control and Developers flexibility.

3) Hyperstructures.
Read 5 tweets
Aug 18, 2022
πŸ‚ The bull case for @fuellabs_⚑️

UXTO is a powerful model. Separation of state from computation is a powerful abstraction in the world of blockchain. It *can* enable modularity via state isolation.

It’s really the classic Bitcoin vs Ethereum debate.

So what if both?
Isolation of state is not a new. Everyone is doing it: Fuel, Optimism, Arbitrum, etc...

LlamaPay, a dapp even using "state isolation" via events for lower-costs: github.com/LlamaPay/llama…

Point is. Scale requires isolation. Think "sharding" and "stateless clients" for heuristics.
Fuel uses the classic UTXO model on top of the Account model. It's like getting receipts for all computations.

Why does that matter?

UTXO is an object. It's self-contained. You can move it around. Ship it places. When building complex, interdependent systems this is powerful.
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!

This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!


0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy


3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!