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

Loading player…

Coinbase Cloud 🛠 Buidling with Coinbase Cloud - Taylor Caldwell, Diego Lizarazo

ETHGlobalMon, Oct 9, 2023, 12:00 AM

Join Taylor Caldwell, Diego Lizarazo from Coinbase Cloud for a workshop titled "Buidling with Coinbase Cloud." Thank you to everyone who joined us for ETHBogotá 🇨🇴 and helped us kick off Devcon Week. With over 1400 attendees from 62 different countries, ETHBogotá was our biggest hackathon in Latin America ever! --------------------------------------------- Follow us: https://twitter.com/ETHGlobal​ Check us out: https://ethglobal.co​m Email us at: hello@ethglobal.com #ethereum #web3 #blockchain #eth

Transcript

foreign [Applause] [Music] but for today we're going to be doing kind of like the the presentation in English and we still will try to kind of like share some some resources in English and hopefully in Spanish soon so do we start okay cool well so hello everyone I am Diego this is Taylor Caldwell yeah I mean okay okay I didn't I didn't put you that one okay there you go so we're going to be talking uh a little bit about coinbase a little bit about coinbase products and uh Taylor is actually going to take over a little bit almost at the end uh for some demos so I think that's kind of a really important part and especially if you're hackers and you're going to be doing some hacking during the weekend with coinbase products so well you see our pictures there we're developer relations engineers I think that's kind of like a long title just for saying we're a developer Advocates or developer evangelists and yeah that's that's it okay uh light for me kind of like the important thing that is kind of showing is the transition between web 2 to web3 you know and we're going to be talking a little bit about that at the very beginning because obviously not only the Technologies change but uh right now we're kind of like an interesting point especially with web3 in terms of the maturity of the technologies that we're using in our day-to-day you know so like quite likely when you're creating a new dap you're going to be facing some uh well or using some technologies that are could be in Alpha State beta or that uh six months from now could change completely so that is kind of like an important thing uh the other thing has to do about well kind of like the the change in mentality of how things are done between web 2 and web3 and uh I think like well Taylor was going to tell me like this is a good example has to do with the AWS and specifically that right now on web 2 because it has been around for so long you can expect that almost everything works you are not really thinking about uh what you are using you are just solving the problems that you want to solve as a developer and then immediately spin like a new instance of uh whatever and it's going to work it's magic you know and it's only magic because it has been there for quite some time and you rely on those things you already kind of like expect that things are going to work and you don't really think much about that on the other hand web 3 almost everything is well being created right now and that's going to be a big part of what uh our team at coinbase is going to be working on now so this is a little bit how at combase we see what we're kind of like trying to do so right now there are different parts of coinbase so retail uh institutional and all that but at the end uh like kind of like the team that we're part of that is coinbase cloud uh we have seen that we have like that layer that is quite important in between the protocols and like the business kind of like uh value that we're going to give developers and you see and we're going to mention them and we're going to kind of like cover a little bit uh some of some of those specific Parts with like data access as taking trading identity so uh today we're going to especially mention payments although we're not going to focus there uh like the the important thing is going to be around wallet and around node that even this week even today was the announcement for new features with wallet right so specifically today and node was launched two weeks ago which I think it's amazing and is this the one for node yes so uh this is something that I really like and is because the no team spent a lot of time trying to uh simplify the entire experience for a developer to start creating a node and to start working with it and that is going to appear in uh Taylor's demo and you are going to be able to uh go to the free tier during this weekend create a new node and immediately you're going to be able to start writing reading from from the blockchain and uh you are not going to have kind of like a lot of effort this is really kind of like click go and you are ready to go uh a lot of people ask about like hey uh right now the free tier is ethereum if you want to come like it work with one of the other uh blockchains I think it's 25 last time that I that I heard from Sri that we have already working what is it that you do that that's pretty much the moment that you can like talk with us and then we uh kind of like let you have access to that if you can like show us that you're going to work with that but if you're going to have just like a project that you're going to create during the weekend you're still going to um well use ethereum and you have the free tier which is amazing and and then you can like pretty much be ready to go um oh okay so this is wallet Okay cool so that's the other product that we're going to be talking about so and uh that we're going to have a demo so obviously if you're going to create a dab you need a way to kind of like well sign your transactions you need to integrate it and that's pretty much a big part of the of the demo showing you how you can easily use uh coinbase wallet and integrate it in your dapps okay so I think I'm already kind of giving you ideas for what you can do during the hack we are we are and we're going to mention that the challenges that that we have so if you start creating uh well adapt start having a project an application that you are using coinbase node and you integrate or integrate and or you don't have to do both is pretty much what fits what you need uh using um coinbase wallet then by all means go ahead and do it uh like I said we have like new features that were really today including fossil testnet so we're going to go through that I think there's a slide with that so we can show you and I see that some of you are taking pictures of some of the slides so then you are going to be able to do that um uh this is for pay so we're just going to mention it here this is something uh that if you want to pretty much kind of like do the entire on-ramp you also can use but this is not the focus rule for the hackathon I we just wanted to mention it there because obviously coinbase cloud is growing for once and we have more products it's just that for this particular event we wanted to highlight coinbase node coinbase wallet but you have more so my recommendation is that during the weekend if you have the time or after the hack uh go to the documentation and you're going to be able to learn more about all the products and of course try to figure out like how is it that you can use it in your day-to-day projects uh okay okay so these are kind of like well I was mentioned about the different products so here you can see a little bit about that so data access identity payments uh I think for today pretty much we're going to be covering those two so obviously with node we're going to be focusing on the data access and with uh coinbase wallet you're going to have a cover identity but like I said we have more than that and I encourage you to just go and check them all these products and I think this is something this is complete and uh unashimed advertisement and is because we have some of the people from the coinbase node team right here and one yeah like over there like okay and really one of the things that why we're collaborating and participating in these events is because we need your feedback okay so whenever we have a new uh product whenever we have like a new idea of course we get excited about what we do you know but we have all all these resources at our disposal at coinbase but forget about is not exactly the day to day so we don't want to kind of like throw features like crazy without really covering what you are doing without helping you in your day-to-day you know like we are providing tools that you need to use and if you don't use them then well then we're not doing a good job so we need your feedback and a big part of the challenges that we're going to present at the end have to do with that we're going to pretty much give you money if you use our products but a big part of that is for you to give us the feedback get your hands on get dirty find the bugs find the things that you like the things that you loved and the things that you hate because we know that well no product is perfect at any given time we always can improve it so it is important that you give us that okay okay so uh obviously the let's leave this link there for a second although at the end I'm going we're going to show like a QR code that you guys can go to but if you're interested in learning more in general about the products this is the place to go from there you can go to the documentation from there you can get to the samples from there you can create your uh node uh account and that uh I think are you going to create it from zero the account so Taylor is going to show you how to create account from xero and pretty much 15 minutes after you leave this presentation you are going to have already a node account running and you're going to be able to read and write so on the of course that's it uh and well there you go no demo yeah so let's dive into some demos so the first thing I want to demo today is the node uh product that Diego talked about so node is our product that allows you to spin up and self-serve nodes to read and write uh data from the blockchain you can do it in a matter of seconds all from the cloud console that we have on our coinbase Cloud website so let me just exit out of this real quick so if I visit coinbase .com cloud you'll be visited with this um that says get started with node so you can click that and it's going to prompt you to actually log in to a coinbase account so after you log into your account you are now at the cloud console where you can select a bunch of different products that you want to start building with today I'm going to show you how to build with node so here's the console you can go up here and create a new project and start for free um today we announced support for gorley test net so everyone here that's uh hacking away and wants to hack away at a test net you can use um coinbase node on the Gorly test net so start free here you can give your project a name so I'll just name mine Tay node and down here on the drop down you can select a network um so once you do that notice bun up for you and you're ready to go you'll be prompted with a modal that provides user credentials so a username and password these are your authentication credentials that you can use to actually read and write data from the blockchain using our endpoint um if this was for your project you would want to go ahead and copy these to a secure location um and then click next and then the next part of the modal actually shows you a code snippet that allows you to make your first request using our endpoints so if I copy and paste this right now in a terminal let's see so spin up a terminal paste in that code snippet and it looks like I have a protocol error um but I'll show you I'll show you a setup that's actually set up properly using Postman in a second so that shows you had to make your first request and you should get back a valid response um and then you're good to go so after you create your node project you'll have the dashboard full of different metrics so you can see how many requests are being made to your endpoint and stuff like that how much traffic you're getting um here I have a Postman collection that has all of the different apis that you unlock when you do spin up a node using coinbase node um we provide a set of advanced apis that allow you to make complex queries to the blockchain so if you're used to building applications by using native ethereum apis maybe you've written code to you know get a bunch of transaction history for addresses or get nft collection data and you notice that it requires a lot of different requests you have to get the contracts the IDS you have to put them all together in code with nodes Advanced apis and nft apis you can do all that using just one simple request using our endpoints so here I have a postman collection and I have um our endpoints for balances and allowances this first example you can see I can make one single request and get token balances for multiple tokens and multiple addresses at the same time in this example I'm retrieving data for usdc and die token for a single address so I can go ahead and click Send here and you'll see that I get data back for multiple tokens just using one request um going even further uh the API endpoints do support both erc20 tokens and ERC 721 token so if you are building nft applications you can use this as well um and then as I go down the list you can kind of imagine what things you can build using these endpoints for example the endpoint I just use right now to get token bounces you can you you can use to build an asset page or asset menu for like a wallet application um if you want to build on that wallet idea you can have a transaction tab within your wallet to get all of the wallets past transactions who sent what to who and what transactions failed and succeeded and to do that you can use this endpoint here called get transactions by address where all you simply do is pass an ethereum address to this endpoint and you can get all the transaction history in the paginated manner um using a single request so here you can see me grabbing transaction data for a single address and provides a bunch of different data things like transaction hash the to and from addresses associated with the transaction the token transfer data and stuff like that um we have a another set of um endpoints that are associated with contracts so a lot of the time you want to read and write data to a specific contract such as getting like the total supply of the contract or the name of the contract the symbol stuff like that it's all on chain data but when you read and write or when you read the data from the contract each of these is a individual request that you make so what our contract apis do is it allows you to get all the token metadata in a single request so you can see here I query for token data for usdc token and I get the total supply of the token the name the symbol associated with the contract itself taking it even further we support nft contracts as well so here I'm getting the data for or the on-chain data for Cool Cats which is the name um and the total Supply now when we talk about nfts specifically a lot of the data associated with them isn't on the contract itself and we store it off chain that's because storing data on chain can get quite expensive so for that if you're building something like nft Marketplace we have a select um we have a suite of different nft API endpoints that you can use to get nft metadata so if you're building a Marketplace we have you can be able to you can create a list a bunch of different collections based on a collection or contract address you can get data for a specific collection to get deeper data for that collection so here I have data for mutantape Yacht Club um so things like the address the name the description the symbol we also do something cool where we take the image data for the nfts and we cache them for different sizes so there's the or original size the large size small size and stuff like that um and then building on the nft marketplace uh example if you are building a Marketplace you probably want to be able to display nfts and who's trading what and the a past history of where this who's on this nft and to do that we have an endpoint for um getting collection activities so that's kind of a high level overview of the different Advanced apis and nft apis that uh node unlocks these are all available for both ethereum mainnet and um ethereum gorley test net yeah sure well I think I lost my phone here um so well one one of the things that I really like and this is again a little bit praised to to the team uh is that the first time that I was kind of like checking uh everything about node I was just kind of like using well curl you know that's how I was kind of like checking like all the requests when I I was well doing like my my little tests but one thing that I really like that I think it would be really useful for you during the weekend is that if you go to the documentation there's a section that is just sample requests you know so like Adele already kind of like covers most of like the big case scenarios that you're going to have of course if you want to go into the details the documentation is there but these ones you can copy paste and of course because I was just using curl I was in my terminal that I don't have my Mac here so now I can not do it or at least not how I would like to I really love the fact that because you have that little request that you can copy then you can go to postman just like how Taylor was doing and you can import that entire thing so you could change just like well your credentials and you immediately can modify it if you want to and they don't post money and start making a requests so I thought that it was like one of these small things that the team did just to make the life of developers better and and and I think I thought that it was really cool when I figure out because I didn't know about that and I was like just like send on the terminal blah blah and they're like oh there's a better way to do it that is already covered and sometimes uh those small details kind of like show how much the team cares about that experience that they are trying to create for you as Developers yep yeah so reading and writing uh data from the blockchain is probably the first thing you want to learn as a developer and you'll carry that skill with you throughout your journey as a webview developer and we're here to make it uh super easy and super simple another key primitive to web3 development is identity and for that we have our coinbase wallet coinbase wallet is a self custody wallet that allows you to store all your crypto assets in Secure manner you own your keys coinbase does not own your keys that's a small uh confusion that some users have so um coinbase wallet just to give you a little bit of context I'm going to exit out of this slide real quick um coinbase wallet is our self-custody wallet it's a multi-chain wallet so it supports all layer 1 evm chains as well as layer 2 evm Chain so arbitrome optimism polygon we support it all in addition to this we support Solana which is not evm chain and here you can see an example of wallet we have a few cool features for both users and developers so the first set of features is that our assets page lists chain or assets from across all the chains so if you have let's say Matic from polygon and usdc and ethereum or Solana it's all you can view all of your assets in one simple view if you're a fan of collecting nfts we also have an nft Tab and close to instant nft indexing built into our wallet and then if you're a Trader you like to do some native the defy trading we have a D5 tab as well for you to do that all embedded within wallet um and then moving on because I know we're we're talking to a bunch of developers right now um You probably care about the developer features so we build coinbase wallet as a developer tool as well focused on the developer experience so we do support things like test Nets and we recently released testnet faucets built into a wallet directly so if you're a developer and you're used to going to different web applications to grab some test net assets and you have to like sign in with your social uh media accounts you can instead sign up for coinbase while browser extension today and actually go directly into the settings visit testnet faucets and then click the test net that you want to get test net assets for and then I'll just do it live here um and yeah so you can basically get Tesla assets sent directly to your wallet um so we currently support Gourley and rink B which is soon to be deprecated but um yeah let's just see if that sends test 90th I'm actually not going to wait for it so continuing on with the coinbase wallet demo so you can see why coinbase wallet is a really cool product and why a lot of people would want to use it not just users but developers themselves so I kind of want to show you today how you can integrate coinbase wallet support into the dapps you build and all the applications you build so that you can support this ecosystem of users that are actually using this product so to do that I'm going to go here um and I have an example project it's going to wait for it to load for a second Okay cool so here I have an example um very basic react application um it doesn't do much right now it just has a simple button and displays some data so it displays connection data such as the connection status of an of a wallet the wallet's address and what chain ID that they're connecting with so right now the button does pretty much nothing now to integrate coinbase wallet into your dap what you want to do is you want to download coinbase wallet SDK which will allow you to integrate coinbase wallet in a very simple way so to start with that I'm going to go down here in my project and add coinbase wallet SDK as a dependency if you're using node or you probably want to do like npm install or yarn add so here's the code for basically what's rendered on the right it's very simple it's just a simple react component that has some State data where we store some State and then down here we render a button and have a function called connect that doesn't really do anything right now now when you connect a wallet to your dap we have this concept called the provider and what a provider is is it's an API extraction that allows you to read and write from the blockchain most wallets so coinbase wallet metamask trust wallet they'll all inject the provider into your web browser that allows you to use it to interact with the blockchain so in order to get that in our project what we need to do is create a new file called provider and then one second and then I have a code snippet here um that allows to define a provider and get that Provider from coinbase using coinbase watt SDK so just going through the code real quick um here I import coinbase wallet SDK into my project and then in order to get the provider to start sending in signing transactions I can instantiate coinbase wallet by passing it some of my app my app name and its logo and then there's a handy function called make web3 provider that lets you retrieve that so now that I have this file I'll go back to my main application file and I'll go ahead and I'll import that um and once we have the provider in our application we can then use it to actually make requests to the blockchain so what I'm going to do now is I'm going to go to this empty connect function that is connected to our um that is connected to our button and I'm going to replace it with a snippet of code so our new code snippet what it does it is it calls that get provider method right here to get the provider and then we use that provider to make two requests the first request is to get the user's account that they would like to use to connect to their dap with and the second one is to read the chain ID that they're connecting with so once we grab these you'll see down here I store them in state so set accounts at chain ID and then whatever stored in state will be displayed on the right so now that I updated the connect function if I go over here to the right and I click um this button this connectable button you'll see coinbase wallet pop up and ask if I want to connect so what happened there is the provider just called the request to request my account so if I click connect I should now be connected to the DAP and now the DAP has access to my public address and can make signing and sending of transactions on behalf of me and um yes that's that's how you pretty much implement or integrate coinbase wallet into adapt it's pretty simple um just takes a few lines of code um there are a few open source projects that take this a step further so if you want to support multiple wallets within your app not just coinbase wallet you can use open source tools like rainbow kit wagme web3 reacts web 3 modal they all use coinbase wild SDK and what I demonstrated under the hood and then as well you also get support for other wallets as well so that you capture a wide variety of users um and then I just want to uh so that's how you integrate coinbase wallet I just want to harp on the fact that coin is what is a we're focused on making it uh develop a developer tool um so we did integrate built-in test net faucets so everyone who's hacking today and tomorrow and throughout the weekend um feel free to grab some test net youth you for gorley test net um and just it's as simple as downloading coinbase wallet extension um I did want to call out our prizes that we have going on throughout the weekend as you're attending the hackathon we do have a bounty of ten thousand dollars split up between builders that are willing to use our node product and our coinbase wallet products um throughout the weekend so if you're building um consider building using node as a product and it'll it'll allow you to be eligible for a six thousand dollar prize pool and then if you're in if you're interested in um integrating coinbase while they're demoing it um as you do your demo um you would you'll be eligible for the four thousand dollar prize pool and everything I demonstrated from node and um coinbase wallet are all available at this link that you see up here um it's a build with coinbase uh Cloud Workshop so it'll teach you how to make your first request using node and how to setup node and also how to integrate coinbase water into your dapps um I also want to call out that we do have a QR code on up on the screen right now and um you can go ahead and take a picture of that and it'll lead you to our link tree which has feedback forms of your experience using our tools so we'd love to hear feedback on what we can do to iterate on all of our products so whether you have feedback on node wallet or any of the coinbase cloud products as you're hacking over this weekend we'd love to hear your feedback so please visit that QR code yeah and that's pretty much kind of like what we had for presentation I don't know if we have like time for QA at the end not I don't know how or it was just the 30 minutes okay well uh they're still not kicking us away so we're kicking us out so we're still saying the only important thing uh that I want to mention is that we're going to be around here and since we do know that we have also local developers uh personally I can also answer questions in Spanish and we have like some technical people here directly from the coinbase node team that uh can help you if you are interested in uh well solving any issues that you may have during the hacking but in general I think the the best recommendation that we can give you is to go there and specifically with with node because it just asks for an email so you can create uh an account right there like on the free tier and it's going to take you just a few minutes and right after that you can start pretty much doing what uh Taylor was showing you so it's not a lot of effort for you just to get your hands on the product and immediately start figuring out how to integrate it with your existing projects and of course we have the challenges so if you are interested in uh well getting some money then that is your opportunity to do something during the weekend so that's pretty much it yep it looks like we're out of time so if you guys have any questions feel free to meet with us we'll be available throughout the weekend to answer any questions you guys have with our products but yeah thank you thanks [Applause]

Automatic transcript — names and jargon may be misspelled.