New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Can Farcaster Frames Become a 10x Improvement for Consumer Crypto UX? | David Furlong - frames.js

Ethereum DenverWed, Oct 9, 2024, 12:00 AM

APPLICATIONS FOR ETHDenver 2024: #YearOfTheSpork ARE OPEN APPLY NOW https://ethdenver.com/apply

Transcript

[Music] perfect uh hello everybody thank you for making it to my very early morning talk um I'm going to be talking about farus frames and why I think they may be the key to unlocking a 10x Improvement in consumer crypto ux um so here's a little graph just to just to get you excited um farcast frames were launched a month ago and uh they drove a crazy amount of activity on farcaster uh some of this is bots of course but um they really made a huge impact on on the Builder community and have sort of triggered a lot of excitement and then it's not just uh people using frames but there's a lot of developers building frames right now um we've seen thousands of frames be built um a lot of those are unique frames that are built Hand by hand by Developers so real quick who am I and uh why am I here talking to you about faras of frames um I'm now part of the farasa team um but I have been building in the farcaster ecosystem for a while um originally with disco um then with mod where we were building a protocol for mini apps starting in farcaster um and then now more more recently with frames JS and then also open frames which is a standard we're building for frames that work everywhere um the other contribution I made was uh we made a faras Improvement proposal around extending costs with um with putting uh Rich metadata inside open graph URLs shared on farcaster in order to enable things like uh polls and games and quizzes and all these things that um sort of frames have given us so what will we go through today um we're going to start with uh keep py ux problems um in crypto then we'll go through sort of what are frames there's no sort of Presumed knowledge around frames or anything like that um then I'll talk about some of the challenges I see for frames uh what some of the key insights we've been sort of noticing so far and then um some bold predictions I have for for frames that um are maybe a bit out there but um hopefully one of them will come true um so I'm going to start with the key problems in crypto ux right now um I think this sort of illustrates it a little bit and it's not wallet connects fault but um Mobile Wallet connect just does not work a lot of the times and even when it does work it's just too many steps um so the first sort of big problem I think is safety so users should not have to worry about losing all their money when they do a micro payment and untrusted domains lead to fewer transactions so I rarely transact on domains that I don't know and a lot of Builders are building new things that are on new domains and this is really harming adoption of crypto the second big one is simplicity so users shouldn't have to care about chains what token they have on that chain what unwrap they they have to do and they shouldn't have to bridge in order to use a new product experience all this abstraction needs to disappear from the user users should not have to care about this I should just have to pay five bucks and then I get the experience and I shouldn't have to think about any of this and then the third one is speed so on mobile wallet connect is just really slow there's too many steps back and forth and it's just not an experience that's at a level of sort of web 2 ux so now switching over over to frames so frames are a way for apps and websites to Define how another app can embed that website and we've seen frames be built for a wide variety of uses um the one on the left is is a new one where you can create a meme using a frame so the first step of the frame sort of lets you choose a meme template and then it runs you through all the inputs it needs to create the meme and then it lets you mint and share that Meme in the middle we see the Girl Scout cookies uh frame which let you order Girl Scout cookies in a frame um and I I ordered some and I'm uh I should be getting them pretty soon and then another type of frame that we've seen very commonly is allowing people to Mint or collect entirely through a frame so here we have a sound XYZ frame where you can collect um the the music directly in the frame and More in more detail this is a frame that lets you play a game like Wordle um so on the very left I saw this frame in my feed um because someone I follow um posted about it and was playing it then I started playing it um as you can see sort of I I I um I guess frame is the first word you know it's uh very uh on brand um and then I managed to get it right and then I can see um my streak and maybe there'll be a leaderboard and and other sort of crypto Primitives that will get layered into this so how do how does a frame work um a frame is some metadata that is added to the website that's shared um so here you can see a couple of properties for the frame um and then the app that wants to render the frame basically scrapes this website identifies these properties um and then transs transfers these into a a UI for the frame and so the property sort of Define the first interface um and then they also Define how do you get the next frame um so when when a user presses a button um the the app that is rendering the frame will make a request to the original website for the next frame and that website may do some sort of action like a mint in the background or some sort of State transition and then it will respond with the next frame and that's how sort of frames are able to have quite expressive Rich uis entirely embedded uh within another website and then how do frame transactions work so right now frames only support mint transactions in frame um and that works through this um this sort of type of button that's a mint button that specifies um exactly how um exactly what the address of the asset is and then the app that renders the frame can choose whether to link out to Mint that asset or enable minting directly in the app itself um and so the the way this actually looks in in warcast today is um aoro URL becomes a mint button uh a user can just press mint and then they've minted so this is sort of like a pretty great crypto ux if you compare it to sort of wallet connect where you have to sort of switch apps do transaction simulation have risk um and switch between all these apps and so th this is sort of for mint which is a very simple action um but there's currently work happening for enabling any kind of transaction in frame and so on on Monday there was a draft spec published on um how any transaction might happen in frame um and the the solution kind of looks a bit like wallet connect um it doesn't use wallet connect on mobile um but personally I'm not the biggest fan of of the suggested spec um and I'm going to go into a couple slides on why I think this might not be the right way for most transactions and even if we go with a spec that feels very similar to wallet connect why long-term uh I supect that most transactions won't happen through a wallet connect style but more like um this kind of style where the user just presses two buttons they pay in in any kind of currency and they don't need to worry about safety or having the right token on the right chain so part of this is the question um what kinds of transactions do we think will be the most common in frames will it be transactions that are free will it be transactions that are not free but very small um or will it be transactions that are you know above $10 and and quite expensive um and maybe take a second to think about you know what do you think transactions in Social will look like so I think there's going to be a lot of free stuff um but we've already seen that free has its boundaries um specifically when you are paying some sort of gas on on behalf of the user um very quickly Bots can can make free very expensive for the the frame Creator um and so we're seeing free but only for certain people and then paid for everyone else um and the other thing we're seeing is is just a lot of frames that have some sort of microtransaction so a small mint uh a small sort of uh mint of an erc20 uh game interaction um so my thesis is that most frame transactions will be very small and Below $10 and so that sort of informs um also how we should be thinking about security for frames and what it actually needs to do so what one of the powerful things around frames is that they sort of take this landscape of all apps um and that includes apps that are secure and insecure and all sorts of things and it reduces the scope um to this frames SDK of like exactly what you can do in a frame and that SDK is kind of like a a guaranteed uh Safe app uh scope and so by doing that you can now take those guaranteed safe apps and embed them in another app without having concerns about security and so that's really the innovation of frames is reducing the scope and then every developer is rewriting how they previously built apps into this very tight scope and so I think there's an opportunity for us to do the same with with smart contracts and transactions where instead of trying to fit every transaction and make it possible in frame maybe there's a way we can define a subset of of transactions that we know are secure where the user doesn't have any additional risk besides the sort of the the payment for the transaction you know they can't lose their life savings by interacting with it and and that's sort of the guaranteed safe transaction subset right and that's sort of what we've seen a glimpse at right now with um with mint with warps in warp cast that's sort of like you know um Zora contracts on base they've basically said that is like guaranteed safe transactions we're happy to take money from the user through Apple pay or warps and then we will um do the transaction in the background and we know it's guaranteed safe and and sort of we don't need to worry about wallet connect and this sort of flow and so I think one of the opportunities and one of the challenges right now is how do we generalize that from just mints to all the other things people want to do on chain from you know playing a game to minting a meme coin to maybe swapping assets how can we reduce the scope from you know all transactions where you need this sort of transaction simulation to this subset where you can make it very simple and embedded in in the ux of the app and so looping back to the crypto ux sort of wallet connect and the current Paradigm you have risk for the user right you actually have to worry about what you're pressing because if you press the wrong thing all your life savings are gone um and then you also have to have this ux of like transaction simulation the user needs to understand what's happening and and that's a lot of friction and so in this sort of guaranteed safe transaction subset if we find the right abstractions for that in frames um we will have no additional risk right you pay $5 the most you can lose is that $5 um and then the second part is you know chains and bridging right you need a certain asset on a certain chain in order to play this game right like I'm a user I don't care just $5 and like let me do it um and so that's the other thing that this sort of pattern unlocks is because the app itself is doing the transaction for the user you can sort of abstract all that away um and then the third thing is just like having to switch between apps right you have to connect your wallet you have to sign a message you need to sign the transaction um and with frames you can sort of get rid of that as well so I I have three mental models to leave you with for frames the first is that smart contracts make back ends composable and I think frames are a technology that are going to make front ends composable and so so that really unlocks a whole new level of composability for the web the second is that frames are an extension on on the open graph protocol that extends open graph with actions and responses and so it enables apps on the internet not just in crypto to compose each other in a new way oh how do we go back oh okay uh okay I don't my computer is trolling me I don't know what's happening uh is there a button here okay may maybe it's my keyboard board uh in my in my bag that's connected or something I don't I don't know what happened there um and then the third one is that every smart contract will eventually publish their frame um and that sort of unlocks a lot of interesting things where um you actually have an interface to interact with a smart contract whereas before you didn't um so there's there's a lot of like uh okay this sounds great but like you know there are there are some objections here so um mini apps and sort of have been tried before uh one sort of notable example is is sort of Facebook um Facebook shut down the third-party app Marketplace uh because they monetize through ads um I think frames allow apps to monetize through uh through transactions and that's very exciting because um if if web 3 social will just monetize through ads I think we'll will'll end up with very similar incentives to to web to Social and it'll look very similar um because web3 social can monetize through transactions much more effectively I think there's an opportunity here for um for the sort of outcomes to be very different the other thing that's sort of net new is that frames uh sign the messages um and so you can independently verify um that the action was taken by the user and that's sort of new and then the third big one is that the execution on these things matter and um frames are sort of permissionless anyone can publish them without approval and that's sort of different from a lot of other mini app sort of ecosystems that have been tried the other concern is that frames only work in farcaster so at open frames we've been working with xmt and lens and other ecosystems to bring a frame spec to them and there's really no reason why an ethereum wallet can't sign a frame just like uh right now A farcast signer can um and then the the next one that I'm I've been hearing a lot of is like okay this is great but like I want to do something with my frame and like I can't do it right it's limited um and so there are some things that aren't possible today um you can't stream video you can't play live games um you can't do all transactions um and and so there are limitations today but frames are sort of a month old and I think a lot of these aren't inherent and we're going to figure out secure ways to do these without sort of worsening the experience and then the next one is like even if crypto ux is as good as web 2 like it actually needs to solve a user right like you C you can make your app frictionless but like if it doesn't draw users then you know it's it's still not going to be successful and I think frames are are sort of uh uniquely interesting because um because because of the sort of crypto background on on signing messages frames without crypto kind of aren't as powerful and so frames are really a powerful way for for us to deliver crypto and sort of web 3 Primitives to web 2 um and actually demonstrate hey this is this is actually cool and only possible through crypto and then the next one is uh IOS app store rules there's there's a couple things around this I'm sort of running out of time so I'm I'm to give over it um okay so um frames on to the question why crypto they increase competition and lower barriers um they will enable permissionless and censorship resistant front ends um and then a couple other things really short on time now um okay last one so some bold predictions I have uh by 2026 um I think more transactions will happen in frames than via wallet connect um or or any pattern that's sort of similar to wallet connect where you have to redirect the user out of your app into into a wallet app and then redirect back okay I'm getting trolled again um the next one is that a frame will give away a million dollars uh credit to vaj on this one and then the third one is is is a very um unlikely one but I I still think it might happen so notion might integrate frames they bought skiff earlier in the year and um if you think about frames what they do it's very similar to the way sort of notion and these sort of all-in-one workspaces like Google suite are sort of trying to enable um a sort of developer ecosystem to emerge on top of them and so I think we're going to see very similar patterns cool uh thank you you can follow me on on farcaster on the left QR or learn more about what we're building with frames js on the right um thank you very [Applause] much

Automatic transcript — names and jargon may be misspelled.