📣 FEVM Summit — Essential Tooling with Glif and Zondax
ETHGlobal·Mon, Oct 9, 2023, 12:00 AM
Join Jon Schwartz, Ainhoa Aldave for a talk titled "Essential Tooling with Glif and Zondax". What use is computing without storage? For too long, blockchains have been defined by a frustrating tradeoff—should my decentralized network focus on compute, or on storage? We've seen incredible innovation on both sides—Ethereum the world's largest computer—and IPFS & Filecoin, the world's largest decentralized storage networks. While we've seen thousands of groundbreaking DApps developed harnessing the power of these technologies, under the hood, they require complex scaffolding, disjointed layers, or complicated developer patterns. Sometimes even, decentralized storage is disregarded, opting instead to return to the "easier" centralized methods. A small team of builders at Protocol Labs set out to change that, and with the Filecoin Virtual Machine (FVM), have turned the Filecoin blockchain into a programmable platform that developers can deploy programs to, finally uniting compute and data on a single network. But they did not stop there... The FEVM creates a runtime within the FVM which simulates the Ethereum Virtual Machine, making all smart contracts which compile to EVM bytecode, such as Solidity contracts, executable on the Filecoin blockchain. With completely decentralized compute and storage united once more—we're more excited than ever for this new frontier—and for what you'll build. ----------------- Follow us: https://twitter.com/ETHGlobal​ Check us out: https://ethglobal.co​m Email us at: hello@ethglobal.com
Transcript
foreign [Applause] [Music] to talk about boyfriend zonex and and then John will be coming on shortly after to do the rest of the the talk so without further Ado let's welcome my Noah hi hi thank you Karthik thank you so much um Let me show my screen so we are here to hack and we are super excited um I'm really happy to represent today the thumbtacks team and the great work we have been building during the past week to really enable hackers and build on on top of epvm and um very briefly we are a team of really passionate people um building a lot of tech solutions for the blockchain ecosystem in multiple areas and um like Sarah was saying we are also contributing to fvn Foundry program and building on top of AVM things like assembly script SDK and many other great tools like well we are also the team behind things like Ledger many Ledger apps and but today here we are here to talk about AVM tools and how you can use them in the hackathon so I want to talk about the devtool suite we are building um on top of of AVM um this is conceived to be like something holistic like tools to enable you to build tests explore and interact with the blockchain as well as with the smart contracts we are deploying there's still a lot of work to be done in in a lot of iterations but we're really happy to present you today the the following three tools the first one has been already introduced by Sarah she was talking about the ficon.soul library or more precisely the solidity mocks library because they will be very soon but still work in progress a file consolidity library that will enable solidity smart contracts to call methods on Falcon built-in actors and access Falcon specific CIS calls but this is since this is still a work in progress what we have created for the hackathon is a falcon.m library containing basically mocks or two actors the minor actor dealing with storage mining operations and collecting improves and the market actor that manages storage and retrieval deals and we have built um two smart contracts this uh the smart contract um that hopefully help you to to to yeah to to perform these these like high quality calls to um to them yeah um to the yeah to interact with the the fbm um we have uh we will put all the links later at the end of the of the call so don't worry about that uh we have a repository uh we have created also an npm package so you can easily uh import that and use that in your project but it's very important to note that these mocks are not really performing real close contract calls or Cisco's but we'll enable uh to work with your smart contract we kind of like are hard-coded some um some some Market deals for example and the second tool I want to present you is the verix public API um this is an API that indexes the whole filecom blockchain historical data and provides you a very simple easy way to to interact and ask for transaction account and Keepsake data and um I will present make a quick demo in a moment it's very easy to use the only thing you need is your GitHub login account and the operations that we support are account tips and transaction you can query by balance by info based in accounts tips it like by hate and latest tip set and transaction by house hate and address and we're really happy to to announce that we have also included a support for wallaby so that you can also use it in in this test net um I will show you very quickly how to access go to it so you can go to our documentation and go here to Barracks API and the only thing you have to do by scrolling here is to ask for a token you get your token after accepting the terms and conditions oops okay here okay look here so do upset the terms and conditions and you get an API token and automatically with this API token you can you can query it let's wait a second um work yeah okay so here we are uh so here we have our token we can just copy it and add it into our code and um we this token has already been introduced here so we can also interact directly here and play around we can select between the Falcon minute Network and the wallaby Network so um here we are recording for example by balance and we can just try and get a response and the same for all these operations we have also developed um a client tool so that it's for you even easier to to use it you have an npm package here so that you can build um on top of it um the next um coming back to my slides so the next tool I or I want to present you is the bricks Explorer um we are also um building a block explorer that interacts with the Falcon blockchain and also have recently had wallaby support um yeah I will show you how a bit um so um okay I will copy here uh so it's very easy you just have to go to verdicts.sundex.ch and um here we can paste for example uh we are here in okay so this is a wallaby address sort address and we can search and hopefully works um okay I will refresh just in case okay let's see um okay so it works so here we um we see the response and by for data address we have here all the transactions um in in hey um by by hash from Etc um here if we click into for example one specific hash transaction we see here the data we have considered this really to be uh useful for the for the developers so you can easily save the response and Export it in either a Json XML file or text and for example I will export here in Json file you can also hear a very easily filter for example here all the same you can filter by type by any of these columns you can also move the columns As You Wish um and um yeah so that's pretty it um and similarly to mainnet for example yeah similar to minute I can do the same well we'll go back I can do for example this outfit for five the short address so now we are recording okay this is my net yeah so this is in mainnet and yeah we don't have any transactions here okay and um and the last thing I want to show you is a way to interact with your smart contract so let me copy here I have um uh contract so [Music] um okay so if I go to this section I can insert a smart contract this is a new address that I have deployed and um it will decode it and you can check here the API the information by byte code by operation and the methods okay this is not recorded yeah okay um yeah um well that's pretty it yeah um and um well I think yeah um and yeah that's that's pretty it and yeah I just want to thank you and say that um there's still a lot of work to be done and uh we hope you can you can use these tools during the hackathon and here is the QR code with the link to to all these tools and um we hope you enjoyed the building and yeah happy happy hacking and um yeah you can contact us in in we'll be mentoring also during the hackathon and we'll be available in Discord and you can also contact us here at hellosonx.
ch and thank you so much yeah awesome thank you so much I'm just jumping in for Karthik here um John I think is it possible that you had something else to to jump in on for the rest of the session yeah yeah welcome to the stage thank you thank you um what's up everyone uh I'm John and Jonathan I work on glyph and um in case you haven't heard of glyph glyph is basically like an umbrella brand for a suite of filecoin apps and tools uh similar design that was also an awesome presentation always very impressed with zondax's work um so yeah I guess today um I was gonna just share with you I've I've definitely done my fair share of hackathons and so I was going to share with you I think some tools that I would use if I was participating this weekend um just to kind of help people get up to speed so I'll just share my screen as well um and I have a few things yeah so um hopefully everyone can see Chrome here I think it looks right to me so the first and and sorry if any of this is already uh repeat information but um the first is called chainlist.org um and chainless.org just makes it much easier for us to add in um a network into metamask so I've actually already done this but the idea is um you want to search for filecoin make sure that test Nets are enabled and then you can easily add the wallaby testnet URL and so if you click add to metamask I don't know what'll happen if it's already added but my metamask is connected to wallaby and I have a little bounce here I don't know if you can see that because my tab yeah that might not go across screen share but um now basically if I'm building any sort of front end application that needs to interact with the chain and write any transactions um I'm just kind of like already set up there so that's one helpful tool another helpful tool um for kind of exploring the Json RPC is this open RPC playground and this should be on one of the hacker links uh that is made available to you but I'll put it in the chat here too I don't know if this chat is going to make it all the way around but it's basically this open RPC playground um where you just point the RPC to our wallaby node and so the the really cool thing about this is you can look through all the message all the method excuse me all the methods that are supported by the glyph wallaby API so this is a mixture of filecoin specific calls as well as ethereum Json RPC calls as well and so if you if you click into any of these calls let me find a good one um that hopefully will work well here let's see like chain head okay so this file coin chain head call um you see it doesn't take any real arguments here this is like a back end implementation thing um and it will tell you like what types I'm supposed to get back from this response and then actually down here there's uh an easy way for me to actually go ahead and try it out um and so if I use control space oops that didn't work if I click the play button I should get back um a sample request response here um to help me design the architecture of my application and so um this is a really really helpful tool kind of like Postman but everything is just generated for you um and I actually learned about this like very early this morning so I would have saved myself a lot of time in the past had I known about this okay so that's two tools so far there's chain list for just making it easier to uh import wallaby into metamask which you've probably already done there's this open RPC playground which is another really helpful tool just for experimenting with the um the glyph apis and just generally like the file coin API and what is possible there the next tool to show you is the glyph Explorer um and here so I have this um this wrapped file coin erc20 implementation here which I'll also put in the chat um and anyone can afford this or deploy it uh this is if you're working on any sort of defy protocol you know sometimes it's good to have a wrapped erc20 I'm not I'm not going to go into like the details over why uh what benefits this can give you um but if if you do want to use an erc20 version of filecoin on wallaby you can go ahead and follow the instructions in this readme uh and so I've actually already done that right before this demo and I sent a couple test transactions so this is an example of a transfer just like a simple token transfer from one account to another um and that is an interaction with my wrapped fill contract so I'm actually sending my like some tote some wrapped fill tokens from one account to another so if you were if you if you have a transaction that you've um submitted to wallaby you'll either get back a CID which looks like this b-a-f-y string or you'll get back like an evm transaction hash which might look much more familiar and so in the glyph Explorer you can go ahead and search by either one of these so I can plug in this transaction hash and I get back the transaction I can plug in the CID which is a filecoin specific content hash and I'll get this transaction detail View and if I scroll down you'll see there's a lot of meaningless um data here or not meaningless but hard to make meaning from so to make meaning from this data you can go ahead and upload an ethereum smart contract API which if you're using a tool like hard hat or Foundry you should have no problem finding these um they've they've most likely been pre-generated for you if your contract is already deployed and so um here you can't really see this part of my screen but I just clicked on the ABI box and I'm uploading the ABI of wrapped fill which I got from my wrapped fill repo that I shared a second ago and once I upload that now I can make meaning from this transfer event so I know it now no longer says unknown um I can see you know the event logs that fired and and those are parsed so we can make some more meaning from those and these were the actual params of what I said so of what I sent so I sent this address some funds and now like a thing that's awfully confusing about filecoin is that um addresses look potentially a little bit different than what you might be used to in the ethereum development world so if I let's inspect um let's inspect this smart contract um so this is an evm contract um and you'll notice I have like three different addresses here um for the purpose of this hackathon uh these you can kind of think of these as all equivalent um this is the the eth address that we see on like etherscan or on like an ethereum specific uh you know developer tooling environment like hard hat or Foundry um this address is the file coin equivalent of an ethereum address so any address that you see that starts with like t410 um this is an ethereum address and so we literally just like do some different encoding to this address and we just plop it on right here so this is basically just the final Point equivalent of this and now the id address is basically just like a sequential number like a not that's assigned to your smart contract so the next the next um smart contract that gets deployed to filecoin after this one would be 1068. um and so this might be confusing if you have trouble understanding this which a lot of people probably should because it's quite complicated um I'll be in the Discord I haven't joined yet but I will um you can also like tweet at me or whatever I'll post my links in here um that's my Twitter my Discord I'll just hop in the chat so feel free to ping me um and I'll get back to you and there's one other thing that I want to share um which is that at glyph our um our application that we're building and launching alongside the launch of the fevm is called glyph pools and it's a staking protocol um kind of like rocket pool uh mixed with you're in finance in a way um and so if you are building I'll show you a little teaser screenshot hang on if you are building a uh an app that needs yield like a native source of yield uh through solidity apis definitely hit me up um we will be providing mock contracts probably not this weekend unfortunately so um those won't be ready in time for the hackathon but if you're serious about building an idea on the fevm that requires native sources of yield definitely hit me up I can help point you in the right direction for how things will look and um and then you know we can we're also still learning about the needs of Builders so it would be really helpful for for me and for the glyph team to learn more about what your use cases so definitely reach out and I think that was the time that I had um but yeah I guess that's all I have still have uh about 10 more minutes actually so um I'm gonna try to fill a little bit of that Gap um I'm just kind of curious like uh well first of all seems like an amazing tool and it's gonna be super helpful for everybody building this weekend so glad that uh we got those resources and I was kind of throwing everything over to the hackers as we were posting them in here too um I guess kind of curious like you had your head in this for a while um what are you excited to see built this this upcoming weekend or just in general and and what are some of the kind of cool tools that are out there you know you mentioned what you're working on but also like other stuff that uh that you you'd encourage people to take a look at yeah that's a really good question um so I think well a couple thoughts on this one is that there is I think uh sort of a natural competition among layer one blockchains um and I think it's important to ground filecoin in the right context um filecoin I see as a very complementary layer to other layer one blockchains uh in the sense that filecoin is a really good place for storing data and so while I think you know we've seen other evm compatible blockchains come to Market especially in like 2021 and there's a large appeal to just Fork protocols from other evm networks into new evm networks the ones that worked well um but I I challenged the hackers who are aiming to do something like that to think I think that there is value in that and I don't think that it would be a bad idea to do um but I think there's some interesting New Primitives that are becoming available that if you if you get them right it becomes a a really interesting environment to build storage Primitives and storage applications that simply aren't possible today um and so some some things from the ethereum world and the um you know the evm world I think will be awfully important like we do need native sources of yield so building a D5 product in um in the fvm is important but that D5 product like is is it looks different than just like uh an Ave or a compound because the needs of filecoin are much different and when you take that kind of like nuanced look into filecoin and the fact that like the miners that are running this network are actually producing real world work there's some new things that can't be done on other chains um that position filecoin and just like a separate Place uh and so I would urge you as a hacker to start thinking in that area like what can I do on filecoin that's simply not possible in other places um because I think that's where you'll find some really interesting value and some really Innovative use cases amazing um very cool uh and then one question that came in from the audience actually as we're kind of chatting about this um somebody's asking if there's actually an API available for galifiat where they can grab the CID or or grab any other info that uh that that you guys are making available on uh on the UI and I guess a programmatic way um if you're talking about transaction history I'd actually recommend I think the the berry API is probably more stable so I'd recommend going with zondax's route for that um and our API would pretty much do the same thing that theirs is um for like an equivalent of etherscan's verified contract API uh that's not something that we have like when you store a contract with an ABI in the uh in the glyph Explorer UI it's just stored in local storage for now so um yeah and if you find bugs too definitely reach out and let me know because this stuff is all bleeding edge totally makes a lot of sense um awesome okay great well uh thank you both for for being here and being a part of this I'm really excited to see all the new things that are being built on top of the fem um and yeah really exciting to uh to have I guess yeah exactly the people who are working on the bleeding edge of this as part of this event so uh really excited to see uh what gets built
Automatic transcript — names and jargon may be misspelled.