DappStore

Devcon 1 · November 2015 · 14:39

Tim Coulter of ConsenSys presents the DApp Store, a platform for sharing Ethereum based dapps. The Devcon 1 talk looks at how applications can be listed, discovered and distributed without a central app marketplace, and what developers need to publish their work there.

Speakers

Topics

From Devcon 1, hosted by Ethereum Foundation.

Transcript

[Music] uh hello my name is Tim Coulter uh I'm a developer at consensus um one of the projects that I've been working on is uh as you can see the DAP store U I'm going to start this off with a leading question how many people here have a smartphone great so you you pretty much know what I'm going to be presenting on today um so the daap store uh what is it it's uh very basic it's a Marketplace for distributed applications just like

the uh Apple App Store Android App Store um but uh when you get a little bit more uh detailed it's also a registry so it's a place to find things uh why make the DAP store uh the general reasons are to promote a Dap economy so people who are creating daps or creating value for the network uh uh have a way to uh get reimbursed for their value um uh a way to distribute apps and uh uh or daps excuse me and provide publicity for them and then developer support for various um features that uh every developer may not want to write themselves and I'll get

into those in a second so uh some of the features that you might that that the DAP store have or has uh is all the things um the first ones are the basic features obviously listings of daps search uh purchases reviews um other features that it comes with or that uh that provides value to Developers for instance is um onboarding and user acquisition to make that process easy for instance a find in the DAP store button or as you might see in the you know with with iOS apps find in the App Store um one the the one thing that makes this DB store different than uh the normal app stores that you're

used to is that you're not actually downloading anything so what this is actually providing is instead of a uh economy where you're buying something specific you're instead uh buying a license and so if you get a license for uh a Dap and they don't have there's no end date for that license then it's it's basically U you're you're buying a uh free to use not free to use a license uh that you can use to the end of time or at least so the apps available um but if you add an end dat then that provides uh or creates a rental economy uh which is uh possibly beneficial to some dap developers um a feature might be type

dap or excuse me tight dap integration so when you have this license economy uh your dap can then check the registry check the license registry and see does this user have a license for my dap and if so then you you um you either let them use the app or you don't so you can find some access controls across the whole network um some other things that might be in the future is currency tools so it's great if you can buy a Dap in ether but uh if you're trying to to make your dap attractive to the general public maybe you want them to buy in USD so uh one possible way that uh we might provide some value is uh do do that conversion or at least make that easy um

another one might be company stores so if you have a company with many daps you might want to Brand uh the daap store or a portion of the daap store to uh your store um and be able to advertise your daps that way uh another source of uh Revenue might be uh ad opportunities so maybe you want to promote your dap if the DAP store becomes a place where anybody or where everybody goes to purchase daps then um it might be very useful to you to play for instance place a an ad on the front page um there's we have more ideas um very short presentation I have 15 minutes uh so the DB source so so there was uh uh what

what is it and why and so now where and when um I'm happy to announce that the DAP store is live now uh that we uh released it today at Devcon so you can find it at dap store.io um thank [Applause] you uh what you need right now you're going to need uh an ethereum node to check it out uh we're going to be working on that um to make it easier to access uh a little bit later but what I'm going to do is I'm going to go ahead and click on this um I know I was told oops let's full screen that I was told that I wasn't supposed to be running an ethereum a go

ethereum node but right now I am and so this is actually the live Network um we have currently have four apps on it these are all consensus apps uh for instance I'm going to go ahead and click into BTC relay and you can see that BTC relay has a description and has some screenshots um what I'm not what I'm going to do is instead of using the live Network to demo this I will use uh a local network and I'm GNA oops this went away I full screened it excuse me um no that's wrong exit full screen so uh I'm going to go ahead and turn off this go ethereum node and start up uh ether Sim uh erri

and and I have worked uh pretty hard together to uh make either Sim better so that's that's um I'm really happy about that and so uh what I'm going to do the DAP store is a truffle dap so I'm going to go ahead and deploy it to Ether Sims so truffle deploy and what's going to happen is uh it's going to deploy the contracts oh you know what I don't want to compile them I'm not going to wait for that um no compile so it's going to deploy the contract to that ether Sim that you just spun up it's going to run some uh post deployment scripts uh for the development environment uh it runs a uh script that uh adds in some demo data

and that's going to finish up here in a second Let's uh wait for that if you notice either Sim is processing all the calls and transactions uh so great now we're just going to do we're going to serve that on Local Host check it out over here perfect and then we have if it loads up our DB store on either of him so uh what I have is I have uh four or excuse me um SE seven of the eight daps that are live right now I'm going to go ahead and add one uh for this demo so uh go ahead this right here is will soon be

Persona integration and uh right now so right now it's just an anonymous user but uh add a new DB you get um information about the DB so what I'm going to the DAP I am going to add right now is called Dow Wars It's a uh distributed Peter how do how do you say that distributed smart contract program game um so Dow Wars right we're going to give it a unique ID which is not really used right now but we hope that to be used uh I have the logo over here which is a pretty sweet logo um we're just going to go ahead and put that in smart contract programming game and uh the D or Dow

Wars currently lives um at a GitHub repository now it's not a Dap that you can use yet but at least it could benefit from the publicity of the DAP store at least being in it so I'm going to go ahead and take the description from the GitHub repository go ahead and uh hit next submitting a transaction now we got to talk now we got to uh add a version that uh people can start using so this version is going to be 0.2.0 again the place that uh you can find downwards right now is at this location uh there's nothing I'm not going to write anything new about this version that's optional um but I'm going to add a couple screenshots uh or actually one screenshot and I have it right here so right now as you'll see

screenshots are host hosted elsewhere eventually we hope for them to be hosted uh on ipfs um go ahead and finish up with that and and what you'll see is you have your page for the DAP store and you can begin uh perhaps selling your DB so uh one more thing uh that this this user is right um is a developer I suppose is registered as a developer in the system but obviously this user could purchase daps I'm going to and Get It Free purchasing it for $0 of course and uh you can open it up it brings you to exactly where you want to go if I wanted to go see which purchases I made and go click over here and you'll notice a dow War shows up so uh that's where we're at now we have uh uh oh five minutes great

we have a lot of things we want to do but um I'm I'm going to go ahead and use those five minutes for any questions yeah sorry I guess I didn't alert you about that thanks question questions okay so how how do you is it on how do you open uh so you're linking just to the dab how you when it's in another context context of another domain how you make sure that it's like openable so how like you running the normal browser yeah yeah so so the dab itself has to check a specific contract to check if this

current user is allowed to use it yeah yeah so uh the way that it would work uh is your dap would integrate or know where the the license registry is and you would you would have your own key or um uh address for your dap and then you go look at the registry and say does this user does this address have a license for my dap and if so uh is the license valid and then you would uh res either restrict if if it is valid you would let them use the DAP and if not you would restrict RCT them from access so so you would use web 3 e accounts to check what identity the user has uh yeah right now we're using um addresses yeah this is all this is all web three um it

should run in missed although I probably need to do uh one or two tweaks to the code um but uh but that's the idea uh it's uh yeah well I guess I was going to say should run the Miss yeah awesome okay we got time for one more question so um when you mean you you're going to purchase the app yeah why why why is the purchase coming via VIA your app and why not why won't the app simply use you as a catalog and then you are because what what the dep gets from the dep store is just exposure because the whole micro

payment and and selling something to the user in the end can be perfectly done VI eum doesn't need to go through the dep store so what's the purpose of of having the purchase concept um well some of the features that might be interesting to provide is uh well let me just make sure I understand your question why why am I purchasing the app via the dep store why I'm not just using the dep store as a catalog to see something and then inside the app completely separated from your dep store uh the the transaction of purchasing is just between the dep and the dep user

yeah well let me let me um put it this way what if you wanted to uh make your dap available to people who want to use different currencies who don't who don't want to use say uh ethereum or or want to use your app but don't know too much about the uh uh about ethereum uh to be exposed to it like they don't want to run a node or maybe they don't want to run a wallet but you want to expose them VI the browser um one thing that the DAP store could do is is provide that conversion for you now if you're just asking where this button should be that's uh if you're just saying that maybe I can have a Dap store button says buy it on my own website

well that's a feature that's definitely a feature we can provide and that can integrate directly to the store right sorry um yeah so it it was intended um like Miss um like the DAP store that we all have discussed in the past as a catalog first um where people can select bookmark decentralized apps that they're interested in uh certainly not pay for those um but there may be some business models in which people would want to pay or developers would want to be paid upfront or would want to lease their daps or something like that so Tim made that a use case as well it's

a it's a way to organize your your daps as well uh that's a good point if you if you put an app in the or a Dap in the DAP store today uh you cannot sell it it's uh released currently free so uh those features will be added later uh looks like my time's up uh thank you