One of the biggest challenges in Web3 is balancing composability and risk.
Two recent innovations have opened the door to create novel social experiences while tackling this dilemma.
Lens Open Actions and Farcaster Frames
Open actions are smart contract calls embedded into an on-chain publication.
They enable developers to embed specific contract calls, parameters, revenue models, and logic (token-gating, follow-gating).
The key benefits of embedding an interaction as a smart contract module are provenance and immutability.
Both the creator and executor can explicitly agree to the terms of execution, and these terms can be verified by anyone.
Frames are a way to embed interactive apps into a social feed.
They enable developers to embed an image and buttons into a social feed, and trigger a callback on button press to update the frame.
Some use cases of Frames are polls, games, or relay-sponsored transactions.
Frames provide a rigid way to embed a frontend experience, while delegating the execution to a callback function which can execute anything.
Open actions are essentially the complement to this design: explicitly defined action and open-ended frontend experience.
The beauty of these primitives and Web3 in general is that they can work interoperably.
I envision a world where where publications on Lens and Farcaster can co-exist by referencing and interacting with each other.
One thing is for certain: the future of agreements is on-chain.
Open Actions and Frames comparison: www.notion.so/defispartan/Open-Actions-and-Frames-9f961d4b379a4b899a0b8ca868e5e3a9