chainlink nft marketplaceIPFS Chainlink Hackathon Workshop

Is Vechain VET A Good Investment? - Publish0x VeChain has many enterprise partners such as PwC, Renault, DNV GL, NTT Docomo, ENN Energy Holdings Limited, Yida China Holdings Limited, and Kuehne Nagel. For many years, the Chinese government has also been rumored to be “close” with VeChain in terms of blockchain exploration. One Dogecoin Whale Owns $22 Billion, Echoing Elon Musk Warning The top 100 dogecoin addresses own 67% of the total 129.5 dogecoin supply, currently worth more than $53 billion at nearly 87 billion dogecoins. And 450 dogecoin addresses own more than chainlink nft marketplace IPFS Chainlink Hackathon Workshop
chainlink nft marketplace BENZYL PHENYL ETHER946-80-5 - ChemicalBook Benzyl... IPFS Chainlink Hackathon Workshop
where are you where are you calling him from new smyrna beach florida nice okay hows that there not bad gotta say the weathers a-okay its not freezing not freezing yeah its a little cold here in colorado we just got done with the winter apocalypse its like the third snowiest day in the world its pretty pretty crazy um sweet well welcome everyone um really excited to have dietrich here well get started here in about 30 seconds to one minute let some people join share this into all the channels hope everyones having a fantastic day and enjoyed the polygon workshop earlier cool uh well welcome everyone uh if you have questions throughout this uh definitely to hop into the ipfs support channel and the chain link discord some people are having trouble logging in there for the first time if you are um i just tested it uh it was pretty straightforward but if you have questions feel free to reach out to me on telegram or any other other means as well really excited here to have dietrich of ipf protocol labs hell be giving a workshop on ifps um and yeah dietrich yeah im really excited to have you here thanks for joining yes thanks for having me and thanks thanks everybody for joining the hackathon were super excited to be working with chain link learn more about what youre building what youre going to build help you get there using ipfs file coin lit p2p all right let me share my screen and can you see that perfect looks great right on okay lets get rolling make a reminder for everyone if you have questions as were going along here just drop them into the chat and then well go afterwards and well be able to answer all those questions for everyone cool yes so what all right thanks a lot keenan well be uh so myself and a few other folks will be hanging out in ipfs uh support channel in discord so definitely hop in and ask your questions we are there to help you build your things uh so quick introduction my name is dietrich ayala i work on the ipfs team at protocol labs i do a bunch of other stuff as well with all our technologies and ive been there for a couple of years i i came from browser land originally spent uh over a decade making firefox and really wanted to see browsers and the web be more decentralized more distributed and more in the control of users like us build the thing you want to see in the world right so ive been working on i guess ipfs ever since then well talk a little bit more about browsers and other things later but quickly what im going to do today is im going to walk through a little bit about what ipfs is how its grown what people are using it for whos using it well walk through a couple of different ways that you can get ipfs how you can start up an ipvs demon how you can run the command line interface uh some of the options that you could use for software integrations for ibfs services if you want other people to run your stuff and just a whole bunch of areas and then finishing off with some pointers to resources that you can use to build your things so lets get started uh really quickly ipfs is a peer-to-peer content distribution protocol uh so http were very familiar with you open your browser uh or your api whatever is accessing service and you ask for something by the location that location being a url that were familiar with uh you know uh that basically is an address that points to an ip address which points to a single location where the data is going to come from ipfess works very differently you address things by the unique identity of the datas content so the contents of itself of the files that youre asking for as opposed to where they are on a server or servers or uh data center somewhere this means a few different things that data can uh or different providers of that data can be used instead of just one uh it also means that if some of those providers go down the datas always available uh there are a number of characteristics and features that come from that uh design and architecture of ipfs and well talk a whole bunch about that in a bit some of the problems that this is good for uh things like emerging networks where you need uh data to be available even if you are offline uh if you want data to be available only locally you dont need to go out to the internet uh confess works on uh segmented and disconnected networks you and i can be on a local wi-fi hotspot from a device that is not actually connected to the internet and ipfs would still work you can go back and load the content that youve seen before from your ipfs node and it will still be there if you have seen it uh theres also things like uh security model that works primarily right now on the web today uh is oriented around the intersection of ssl dns and http ipfs has more flexible security model where you can share directly with people who have the keys or you can share broader in public networks its very very useful and well talk about this in a little bit in combating censorship websites that get shut down making critical information available to the people that need it most uh one of the things that we uh some some not super fancy stuff that ipfs really helps with things like breaking links everybody knows what a 404 is uh non-technical people know what a 404 is its memed uh and when things go down everybody knows with ipfs you can move your files around in directories and you wont break the links because the address is directly tied to the identity of those files uh so these are a number of the things that just kind of come built in um the cryptographic verifiability when you address something by the hash of its contents means that you are always going to get what you asked for uh if you ask a http url for something twice the second time i come back with something different this is really good in some ways for dynamic content but also not great for a lot of things that break because of that the amount of trust you have and what youre going to get back changes the interesting aspect i think of ipfs that were just starting to get now with things like uh nfts and crypto and dap usage uh is contextual trust models so who do we trust and why uh right now if i want to be able to communicate with a friend or family member i have to go through a third party http ssl dns nexus of security and trust model uh and which is again mediated locally by a browser that has a certificate authority uh but ipfs allows me to exchange data with people that i know directly uh maybe even encrypted and through a public network so very different model whos using ipfs what are they using it for how is it grown uh the ibs public network is comprised of over a hundred thousand nodes this is probably out of date a little bit uh the networks growing and growing lots and lots of new nodes uh recent integrations like uh brave having native support for ipvs also resulting in new nodes ipvs 0.5 was a major change from in how we actually construct the public network and how the uh the dht the way that content is found broadcast and we asked for on the network how its constructed and operates a major performance boost then uh and most most uh ips nodes are now on that newer version i confess desktop and companion talk a little bit about these in a bit these are ways that you can install ipfs on your desktop or laptop today they have user interfaces that allow you to see the status of your node do basic operations like run the ipfs node view and change your files be able to view those files through your local node and be able to connect things like web browsers to use your local node to be able to access data on the network instead of having to go out to the internet first over http uh the http gateway so this is a major service that we run but also a number of other people around http gateways like qualifier over a hundred terabytes of data per week over two million unique users per week so a lot of people using this critical public service to be able to easily access data on the ipfs network if they dont have a local node a lot of application developers are using the ipfs http gateway to be able to quickly bootstrap publishing data type device and then be able to make it easy to access in their applications as well learn most end client applications native apps web browsers dont have native ipfs support so they go through an http gateway to be able to access data on the network some of the use cases that people are uh using ipv6 for today uh decentralized naming so uh like ive mentioned several times already the trust and security model on the web today is that intersection of http ssl and dns uh but that is easily shut downable as were finding out in places like turkey where they shut down wikipedia and myanmar where they currently have wikipedia shutdown and a number of other internet shutdowns this year alone massive problem decentralized naming allows human readable names for things like ibfs addresses well look at some ipfs addresses in a bit they dont look like something you want to try to remember so we need some layers on top of that in the network that allow us to work with those addresses more easily i think services like unstoppable domains and enos are ones that are doing that um covid news is actually something that uh for a large chunk of the global population access is restricted so uh we have some folks that weve been working with uh matters dot news uh the litecoin project uh and a few others that are making covid news available in their media platforms uh in several different countries that are having these types of challenges right now wikipedia as i mentioned currently completely offline in all languages in myanmar so with the help of a couple of folks on the ground there some human rights activists in southeast asia and some infrafolks and the key weeks project that does the compression scheme for wikipedia and bundles snapshots of wikipedia we were able to uh a really short period of time after that shutdown happened get the myanmar localized version of wikipedia up on ipfs so you can now access it as you can see in the screenshot for for people in myanmar if you get access to this critical information being used for physical and digital goods uh braves uh swag store runs on ipfs uh pinata and and is allowing nft storage on ipfess as are a number of other people its becoming a really popular pattern uh a bunch of the nft platforms use ipfs by default so were seeing an increasing trend of ipfs addresses being used the the immutability of that address being a superpower for being able to write data to a given blockchain and be able to make sure that that reference doesnt break even if the server moves or the owner of the data moves or a number of different people are keeping that data alive makes a more durable and reliable way to store publish and refer to digital goods for the long term uh i identity uh interestingly i like ipfs doesnt have a blockchain itself um you can go actually go to uh thatll give you the answer to that which is no however in that system you still need to be able to have identity a lot of times for applications where you might need to be able to log in or understand who you are talking to or build some of these contextual trust models uh the three box project which you may have heard of has initiative called ceramic and idx these are identity primitives and systems and services on top of ipfs make it uh very very easy to be able to quickly build applications that have identity on ipves microsoft has a project called ion which is a decentralized identity system that uses ipves to aggregate identity transactions into very large batches take the ipfs address of those batches and writes it to the bitcoin blockchain uh so if the uh microsoft ipfs and bitcoin three words that dont typically go together but uh we have a blog post on on on what theyre doing uh theyre also gonna speak about that project along with a couple of other identity projects at the next ipfs meetup its monthly and that edition is next week i believe i will share that link in the ipad support channel on discord in the chain link discord so you can join and find out more about this uh in d5 loads and loads of these services are either publishing their front ends on ipfs uh or using ipvs for asset and data storage and retrieval um you know ipfs makes it pretty easy to be able to uh publish large amounts of data uh even feed style uh the way that you might be getting some of this data and the way these services are interacting with each other uh some of the ipfs users that were working with well heres a look at a whole bunch of them um theres uh everything from uh identity service like weve been talking about to data persistence to uh online marketplaces nfts a lot of different people serving content and cloud services based on ipfs uh we published last year a series of case studies so um when companies took a particular use case uh or particular architecture and use ipfs to solve this problem we wanted to understand to be able to share that solution in more depth you can go to and you can read more about some of these things is a supply chain management network they actually manage supply chain and tracking across international borders uh so its been very interesting to see the uptake in their customer base people who want this information to be more transparent widely available to reduce the friction in the businesses that theyre working with uh but also need to be able to have that provenance of data to be able to say this is where that data came from but you cant trust it uh our bowl is another interesting one its parametric risk management for agricultural businesses so right now a farmer for example would pay a centralized company for uh insurance on if the weather is bad and their crops fail however our bowl allows an open marketplace for people to invest in that uh and for the uh basically its a smart contract thats tied to weather events that does the payouts of that risk management infrastructure very very interesting different approaches that these types of technologies unlock uh and those are available in in much more depth in these case studies and it would be also powering filecoin we launched the filecoin network last year it is currently live this is for a long time incentivized open marketplace for storage so right now you start up the ipfs node and you shut your computer that data goes offline unless somebody else is hosting it uh well talk a little bit about the hosting services for that but falcoin is ultimately a open market place for people to offer to uh service to keep that data alive there are many different constraints sometimes you might have a very very large data set that you need to store inexpensively because you dont need to access it often and other times you might have some very specific data storage requirements like gdpr or california consumer protection act where you need to be able to find somebody will store that data inexpensively but under those specific constraints uh filecoin opens up a data storage marketplace to be able to do that filecoin ignite was uh one of a number of different events that we ran uh last year when the five point network launched and uh over 100 different projects building on ipfs came out of that series of events and some of those projects are running today some even got funding and um its really great to be able to see the longevity of the different projects some of those are even probably in that ecosystem diagram i showed before uh some of the interesting uh experiments uh the folks at netflix were using uh experiment with ipfest for uh they managed a global network of computers to be able to serve their infrastructure and they were using ipfs for inside that network the addressing of of containers so how to distribute distribute containers across this massive network uh when you have to manage paths and locations uh when and you trust everybody inside that network ibvs ended up being a pretty good solution for just being able to fetch from an address and if your nearest neighbor had it thats great uh audience you may have heard of as well if you were in the web 3 space decentralized music service where each node isnt uh in the network as an ipvs node there are artist nodes and player nodes and metadata nodes uh and as they have recently launched the token as well its very exciting and great to be able to see the partnerships with record labels i worked in the music industry myself once way back in the day for uh record label so i understand the complex network and complex economics of the music industry and its great to be able to see the strides that theyre making uh the pdp part of the overall stack that ipfs is built on uh powering eth2 and its great to be able to partner with a group of uh people that are really rushing forward with a network that is so heavily dependent on the infrastructure that were all depending on and a set of apis its great to be able to see those improving with that usage uh but harkening again back to my previous life working in browser land for a long long time uh i do work on a number of the browser integrations uh the ipfs the first that we actually did uh was in april 2020 um opera shipped opera android that had ipfs support you can address things with the ipfs scheme in upper android uh its backed by a remote http gateway uh with there are theres some work that were doing in enabling native mobile iphone success uh but because you have to be very careful about both bandwidth usage and battery lifetime uh in mobile devices its taking a bunch of tuning theres a project by a french development group called bertie which also you may have heard if they have an instant messaging or a messaging secure messaging product theyre working on that theyve done a load of work in getting uh native ipvs working inside mobile apps uh so thats something that we hope to see emerge this year you can already run it now we want to get it to the point where there are a bunch of example apps you can easily fork in swift kotlin uh to get your ios android apps going so opera launched android and then they launched an opera ios just last month uh we announced that at east denver and uh so now uh both of their mobile browsers have ipfs support you can get that from the android play store or the ios app store uh in in kind of our protocol labs long term bet on open standards open source and the web itself and upgrading it weve been working with a organization called degalia to fix problems in web browsers today so webkit uh chromium gecko and firefox figure out issues that make it more difficult for not just ipfs but all decentralized and distributed network applications to run inside these browsers some of these initiatives are around standardizing how the security model is applied to localhost so for example if you install an ipfs daemon and you have a local web-based application you want to be able to communicate maybe from your website but in the client-side running code you have communication directly to the local ipfs uh thats something that we want people to work for application developers and pattern and tell all browsers have native ipvs support so this is something that gali has been helping us with they have committer status for all the major web engines and um weve even found a bunch of things where we can smooth out how uh the security model actually works across web browsers so that even some of the web compatibility problems that people have today that are not related to things like ipves are getting improved out of the work that weve been doing with them so that this is really helping uplift the web as a whole making life easier for web developers uh where every single little teeny compatibility problem on the web hurts from me im trying to develop things today get my product shipped standpoint brave this was a really big announcement for us earlier this year and a major milestone in the success of distributed web protocols uh brave is now shipping native ipfs support if you go to an ipfs address in brave it will ask you would you like to enable the native node and it will actually download the go ipfs implementation run that demon and manage it for you you can go to brave colon slash ipvs in brave uh to be able to find out more and be able to manage that move and see what its doing that allows us to do native ip ipfs addressing and native loading and publishing directly from the browser uh so this is a really really big opportunity to be able to put these technologies in peoples hands in a way thats easy that doesnt require uh the installation of external software or things like telling regular visitors please install this server which is a really an easy lift in terms of getting these technologies into the hands of people you know most it was great to be able to say to the folks that were like hey can you put put the wikipedia on ipfs uh for the myanmar locale to be able to say hey you can just if you have it ask us a desktop computer you can download brave and it will all these links will just work for you right out of the box um so just an example of where really pushing these technologies out into clients one actually helps us achieve the the dream of decentralization uh be able to put those capabilities these superpowers and more control into users hands uh instead of only all decision making in the publisher stands and how pushing out to the clients really is where where that happens in the in the end so as you can see ibfs being used for a lot of things by a lot of people uh its great to be able to support all these use cases and really really looking forward to what you come up with in the hackathon so lets talk a little bit about architecture how ipfs works how its made up as we talked about earlier its very different from the network architecture standpoint of a centralized service http has over three decades of well-trodden pathways for developers ipfs works a bit differently while concepts around distributed networking and peer-to-peer have been around since the beginning of network computing uh the access and pushing out to the client is fairly new and while weve seen a couple of major uh you know moments in time over the last decade or two even where peer-to-peer networking has hit the mainstream uh it its still really not the default way that people are building applications today so part of our work in designing and building rpfs is how do we abstract some of these concepts away make it easy for developers to be able to onboard and use these technologies uh youre familiar with http domain name addressing uh you act access something you request something by first the host name and domain where that asset might be that youll have a use a path structure that represents a file system on the end thats how you ask for something in the http web uh theres a number of challenges there if somebody renames that jpg to jpeg suddenly you have a 404 even though the file is exactly the same uh or if you just rename the directory or move directories uh moving from data center to data center massive undertakings today and the all the complexity and error-prone development that comes along with those types of migrations and architectures when you address things by the their identity as opposed to their location a lot of those paper cuts of development slide away uh but at the same time its a little harder right now because we dont have that three decades of tool building with ipfs we address something by that identity you can have path structures on the end but uh and be able to use a file system metaphor for addressing uh but also each one of the elements in that file system metaphor does actually have a unique identity as well that you can ask for things by uh the way that a ipvs address is constructed uh it takes a hash of the con of the files contents uh it uses different encodings the address itself actually ends up being a combination of the hash of the data and some metadata that talks about how that hash was created so uh addresses even can be constructed in different ways and they have portable metadata that allows you or a ipfs client to be able to understand how the address was created if you change uh even one small part of that file that address does change so this means that we need to make different ways of addressing dynamic content and we have a couple of different ways to do that but ultimately it does mean that what you ask for some when you ask for something that is exactly what you are going to get because that cryptographic verifiability is built into how you ask to begin with uh so large data sets we actually chunk the data up so uh lets say you have a given ips address and it might reference a video that video may be multiple gigs uh if ipvs will actually take that when you add that video to your ipfs repository it will break it up into many small pieces and give each one of those pieces a unique address and identity uh based on the contents of that piece of that block that means that when you ask for something from its root it will ipves will then separately ask the network for each one of those pieces by their own identity network which means you can get those pieces from different entities on different nodes on the network uh with location-based addressing as we talked about you have this relationship where youre actually asking one one entity one node one server uh for whatever you have uh a bunch of people are asking for that one thing theyre all asking that same entity but with ipvs-based addressing uh any node on the network that has the data can be that publisher they can provide that data so you dont have the bottleneck of one if that publisher goes down maybe they just didnt even renew their uh lets encrypt certificate uh maybe they forgot to pay their isp bill uh maybe they did actually get shut down by a state actor that decided that internet access was too dangerous for people to have in current conditions uh for whatever that reason is you can still get the data that youre asking for from anyone who happens to be also providing it which is a really powerful change to the underlying architecture of the networks that were used to this also really changes uh the nature of innovation so uh lets say youre you have a startup you have to build out your web infrastructure you get a server somewhere serving the data as your user base starts growing you add more servers more servers more service ultimately you end up being dependent on just maybe other companies that have lots of servers and you rent those servers from them with ipfs it allows you to distribute that load in a way that is a little bit less dependent on single businesses in the ecosystem uh like i said earlier in filecoin we want to create open marketplaces for the incentivized storage and serving of data and with ipfs you can have whether you know what no matter what the incentive is you can have other nodes host that data it might even be something like a more cdn relationship where the people have who have loaded it have uh uh also decided to serve it uh were talking about experiments in brave where maybe something like we use bats or filecoin inside the browser to be able to explore ways of incentivizing the re-hosting of data from there and sometimes you might want to do something like click i just want to re-host wikipedia because i believe in it because i think its important that people have that data uh the current current structure and like kind of like high-level architecture of how the web 2 is is designed its applications you have all the power as a publisher which might be good in some respects but its also the root of what we talk about when we talk about user agency and user control and um the application logic doesnt move with the user where they go the user data doesnt usually typically live on the users machine it lives on the publishers machine which gives them the ultimate a bit of control there uh what what what does ownership of data actually look like um all the decision making right now around that happens on the publisher but in these new type of architectures when everyone else also has the data that the publisher or the logic even the the publisher has originally served that gives us more control it gives us a lot more agency over our experience online it means that if that publisher if their business goes down or if twitter buys them and shuts them down or some other large company buys a smaller company or service you you might still have access to that that application logic and your data your app might still work um it yeah that wont always be the case but at least that that is an option today that especially as independent creators who want to build applications that they want to live on past the the the point of publication thats something that is more accountable for them to do uh without having to have and retain all the infrastructure that comes along with it uh endless sales of people who built a website that was successful at one point and then things moved on but theyre still getting server bills every month like what do i do so these are ways that you can solve some of these problems out of the gate in the way that we build things from the beginning um so i ipves is actually a collection or a part of a collection of technologies its built on top of uh some underlying technologies like iplt lit pdp multi-performance the collection technologies for how we construct these addresses um and uh so that they are a little bit more future proof and more resilient to change uh instead of the the fragile easily breakable location based uh scheme addressing that we have with http today filecoin built on top of all of these collections of technologies uh in the stack at the top you have applications uh the things that were used to working with or even even just looking at rendered content underneath that we do have ips which is a distributed naming system so it uses the same underlying network stack and architecture of ipfs and as a way of referring to address addresses so you can say a publish a human readable name should be applied to a given ipfs content address and then people can use that uh theres uh other technologies like dns link that allows that to integrate be interoperable with existing systems like dns ipld allows us to be able to link disparate data sets together or to be able to join data or be able to build relationships between data sets uh or even metadata and data uh and underneath that the transport layer limp pdp a collection of technologies uh aiming to provide a transport agnostic api so whether the underlying network connection is you know a a bluetooth led connection whether its a tour hidden services whether its 700 regular tcp sockets uh that the application one layer above doesnt have to necessarily necessarily care um about what that might be uh your application logic gets to be disentangled from that transport layer in a clear way the typical way that you would run ipfs is through a node it does a number of things cid verification it broadcasts out to the broader network it manages the seeking of data between nodes uh it manages the chunking of nodes uh it has a a repository a local uh repo or a data store where it keeps your data uh and and in a way that allows it to be able to do all these types of uh operations um and it has each node can be configured differently both what the default transports or available transports are based on the type of hardware or software environment available and then you might want to say for mobile say deep connect to only 30 nodes by default or even five other nodes by default and keep those connections uh or maybe even use transient connections whereas something like a server a desktop computer you might be able to have a higher number of default connections you want to keep open the more connections you have open the better performance youre going to get but also the more bandwidth that you are going to use and the more energy uh you can sync with each one of these nodes interact with other nodes you can link data and be able to broadcast that and you can use those to persist your own data locally and were also adding services we just recently added the ips painting services where you can actually configure a node to automatically publish and pin data to remote server that you might have paid to be able to host for you how do you get ipfs there are a number of different ways ipfs has the desktop application for mac windows and linux you can install this from a number of different locations well talk a bit about that ill show you that page in a bit this is a desktop application that kind of runs like a system tray or a menu bar app uh it shows you the status of your node it allows you to do some basic operations like see what files you have pinned what files you have shared add and remove uh files from your repository be able to see the status of your node how much bandwidth has been used things like that we have a cli that you can install just go ipfs implementation uh you can run this daemon and it has a bunch of operations itll walk through some basic ones in a bit uh and then tools like ipfs update which allow you to easily update to newer versions of ipfs uh you can install ipvs through npm uh to install uh jsipfess and the demon that way as well uh lets do a quick walkthrough of ipvs desktop so this is something where you can follow along if you like and i will show you some of these bits and we can walk through and and exercise as well share this one switch screen share there so you can go to uh uh tinyurl ipfest desktop as i showed in the other slide uh to get to this uh hackendy which is a quick walkthrough of what you can do why ipfs desktop like a basic operation that kind of shows you a bit about how ipfs works in a way thats easy to follow along you can go to the site click install on the top left and this will take you to a page that will show you a little bit about what ibps desktop is what you can do there some of the features that it has and quick links to be able to get ipvs desktop uh from for the operating system that you are using uh some of these have a setup step uh and ultimately you get to the point where you can find this icon in your uh status bar or menu bar and it gives you a couple different options it has some nice features like automatically upload screenshots from your local screenshots directory or be able to download files be able to publish files stop restart demon also does automatic updates so well pull down and install new versions of ipfs if you want it to and has some ways to be able to configure that as you can see here on the peers screen it does show you uh how many files youre hosting how many peers youre connected to what your bandwidth usage is uh if you pick a file like i have here with the chain link logo you can go to the file screen ips desktop and you can either click import that file or you can just drag and drop that file and from your file manager and it will upload the file to ipfs uh youll notice theres a menu here where you can see the different uh different parts of the file uh you can look at what the address is thats what the cid is the ipfs address for the file that youve added uh with that address you can do things like add it to an ipfs gateway ill show you that in a sec ips desktop has some tools as well that allows you to explore the contents of that file so like i mentioned before when you upload a file to ipfs it chunks it out to all these little bits and based on different based on a default algorithm you can have different chunking algorithms as well you might have one that is custom to the type of data that youre chunking if it needs to be served up a different way or put back together in a specific way or a way that is optimized for a given use case um so ipves desktop allows you to see what those encodings are uh what the data is comprised of the size of the data how many blocks and chunks that its made of and a bunch of other different metadata you can take that cid and you can open it and theres a link for that i give a sales hub in your browser so you can actually see whats on your local node what its hosting you can open that up and then you can share with other people but youll notice that the address that it gives you is a local host address with default port 8080 but thats changeable uh if you go to the localhost slash or you know port 8080 and then just put that content address you can load the data directly through there you can also open through a um gateway as well and ill show you that in a few the uh uh what one of the other interesting things is that you can take for example the cid that i have here and you can open that through your node um if you open that up in uh dot io gateway so lets say you add a file actually through through your desktop application then you go to the gateway gateway ipfest and you paste that cid in there it will open it and it will actually pull it directly not directly indirectly from the node that you are running so if you add something that is unique to ippfest nobody else is hosting it all the gateway will ask the broader network well ask the dht does anybody have this cid uh that request will percolate along network until it finds somebody that has connected to you one of your peers it will serve up that data serve up that file and be able to retrieve it for you you can as a way to kind of like uh i like this as a way to really help understand what that peer-to-peer network actually means is that you can actually take that same id and you can go to cloudflares gateway uh or you can do um go to the profess public gateway checker uh which ive loaded here um oh that got marked by chrome i will have to figure out why that is uh theres a website that we run um thats very innocuous really it doesnt have any danger on it uh thanks chrome or crave in this case probably um which has a list of public gateways that you can look at uh it shows ours it shows qualifiers and pinatas uh other people that can run gateways one of the challenges of gateways is you have to trust that that gateway is uh actually giving you the data that youre asking for you are delegating that trust when you use http uh so using uh your own node is the best way to ensure that youre getting the data that you asked for uh but http gateways uh we run them a bunch of other businesses run them to be able to make sure that that data is available uh and that that gateway code also is audible because that is part of the open source iphone project in the peer connections screen of ipfs desktop you can see who youre connected to and where uh the way the dht connection algorithm works uh means that we do want to be able to get access to data all over the place but in the quickest way possible uh so its very interesting to see where those peers end up being its using a ipg location hand waviness here so it might not be totally accurate but it will kind of give you an idea of what that distribution is going to look like and as i said before you can open up that file basically on on any gateway so lets flip back to the slots which are here so thats a quick walk through through ipfs desktop uh the ipfs cli so uh on that same docs.ipv site uh it will show you the instructions for installing the cli uh you can get it through brew you can download and build yourself basically uh for a bunch of different oss and this allows you theres really a whole lot of commands through the cli and its really worth spending some time uh in the docs or just looking at the cli help uh on the command line and looking what these different commands are but im going to quickly walk through a few of them ipvs and knit when you first install ipfs you want to initialize a repository local repository uh this will do things like generate your keys and your i your peer identity thats used and hand it off to libpdp for network communication and then you can use the ips standing command to be able to start that service and it will tell you uh where when one what your identity is and then to where the services are being uh run by default add how do you add data to the network uh something you want to be doing a lot of um i could just add you can add a file that way i will uh return you the cid of that file i what it invest ad will do is take that file check it up in a bits store the repository and then give you the root c id for that that tree of data for those bits uh so you can reference it in other places notifications or share with other people it also publishes to the network the availability of that data so for that root cid and all the other cids for each one of those blocks in that file it will tell the network hey i have this this is the thing i have if you would like it im the one im one of the nodes you can get it from uh so thats also built into there if you want to get data on the command line you can use the ipvs get command which will download the file locally theres a couple parameters there around how and where you want it to go uh ipfs cat works like the cats command it will allow you to pipe that data to wherever you like uh how do you understand whats going on theres a bunch of commands related to whats going on with your node ipfs stats will tell you things about a number of different things the example of here is for bandwidth how much bandwidth has it used is it currently using ipvs stats dht will tell you about your connection to the broader public network you can learn things about your local repository as well as any ongoing file exchanges that you have uh so i give a swarm connect so iqbus is shipped with a default set of of nodes that it bootstraps to so well try say you know 20 odd addresses be like can i connect can i connect and it will build this set of connections based on that and does that dynamically constantly basically always managing the set of open connections in the house to be able to make sure that it has the optimal uh connectivity to the network uh but sometimes you might need to be able to connect to a specific node so lets say that you are setting up an ipfs node uh you want to be able to have your other node see can i reach that node you might want to use this command swarm connect to that address to be able to see if you can connect directly to that node you also might want to set up a private network between two nodes not connect to that public network you can uh use that as well uh peering is a way that you can persist that so in the ipfs config file you can say i want to always connect to this node lets say you have a very large collection of data and youre working with other companies or other friends or projects to be able to make sure that data stays available uh lets say you want to have a quick connection to the other nodes that are holding a specific set of data this is a way that you can do that on your config so when your ips node starts up it connects directly to the set of nodes that you specifically configured it to do ive talked a bit about http gateways ipfs companion is a browser extension that allows you to interact with your local node and those gateways and be able to do things like smooth access to idps comment or content uh you can do things like say detect a gateway url ipvs dot io slash ipfest and cid maybe cloudflares or pinatas or custom one and say hey i actually want you to not go to that server i want you to pull that cid out of the address and ask my local ipfs node to get it instead it provides that as well a number of other things heres a screenshot of the ipfs public gateway checker um where you can see uh not what like what features in different gateway supports also whether uh how what its um uh what its kind of a performance is how fast its gonna return replies right then at any point um uh ibps companion it is available for uh firefox and for chromium based browsers as well uh jsippfest so uh javascript uh if duking that with python for number one programming language in the world estimated uh around 12 to a 13 million javascript developers worldwide uh every one of these hackathons that i do most developers are working with javascript so we have a javascript implementation of ipfs uh it it has a lot of the basic apis um it has a we have a js implementation of the p2p as well that its built with and built on top of however it doesnt have support for direct dht connections so what it does is it boots drops creates a local repository and thats whether its in node or whether its running inside of a browser tab and it connects to a remote node and proxies the communication basically through remote nodes so it will bootstrap to uh a go ipfs node somewhere uh or something else that will relay it and connect it to a uh rpfs node and or more uh and then well aggregate a bunch of connections uh to be able to make sure that that that connectivity is there for the application uh so one of the patterns we see a lot is uh because ipvs is not available all the way out to the clients yet um in built into browsers for example or built into operating systems is that people will ship an http web application that uses jsipfast to be able to connect back to the ips network uh where either some other way theyre publishing data to the network or maybe even publishing data to the network directly through the ipfs node running inside a web browser tab itself we also have some other libraries that use that so if youre shipping an application a web http web application that uses jsivest you might not want a full jsivs node in every tab uh you can have it so it actually all the tabs that are served from your domain um of your web app are all inside a web worker that uses one uh node so if you have an application where youre like were gonna have a bunch of different nodes across a bunch of different tabs and your users you know open up many different tabs that might be the way to go for you it will be more bandwidth and power efficient for your users uh there are a number of services that are built on top of ipfs and and make it easier to work with so ipfs is a pretty lower level network protocol uh as as weve learned today uh its a provides network architecture and a set of primitives for doing things uh but the same way that uh frameworks in javascript or python or java or rust help people develop things better faster easier help reduce the learning curve make it not as steep get people onboarded and building their things quickly also another key ingredient for successful hackathoning these are some of the services that do that there are a number of them uh orbit b uh is a um uh abstraction on top of ipves that allows you to work with things in a more database-like fashion and also has built-in syncing via crdts uh textile is a both a service and a set of libraries they have everything from native app examples that you can work with uh they have uh higher level abstractions for things like syncing for collaboration for identity uh three box also similarly has identity services uh file management apis and they have as i mentioned earlier launched both ceramic and the idx initiative uh which are uh identity frameworks and services to be able to make it very easy and fast to be able to build uh identity-based web3 applications if you want to have your data hosted uh sometimes you want to have a big data set hosted or just even if its a small thing like an nft you want to be able to have that set of data permanently available so in case you shut your laptop and your data will not go away uh uh temporal uh actually i think i should remove this because i think theyre they rebranded or theyre not running anymore uh but inferior is one youll be familiar with uh that is uh used a lot for went through applications in the hearing space uh they provide uh hosting and pinning of ips data a number of apis are apis for managing that data and then pinata which is a service that allows both free up to a certain tier and paid services for hosting ipfs data and they have a bunch of great tutorials on how to use iop test for storage of nfts that are really helping a lot of folks right now who are doing work in that area uh one thing that you know you can make a website on ipass but theres a whole bunch of parts of making websites that uh are integrated into where we store our code github github actions ci cd services and deployment services fleek is a company that started last year that is doing hosting and publishing that makes it really really easy to be able to connect your existing source code repository and source code management system to ipfs uh to be able to auto publish to be able to make sure that you youre publishing to ipfs and youre publishing to http its very easy and smooth uh i think were probably gonna see a number of different services uh like this coming up as uh ipfs continues to mature uh and be a default choice for people as more businesses come online they need services likely to be able to deploy more smoothly easily in a way thats integrated with their developer workflow or existing services i mentioned some of the naming services earlier theres really a lot happening in this space too building on top of the existing dns but also in a way that isnt stoppable by icann or by uh state services is like really the easiest way for for governments to turn the switch and turn off access to things like wikipedia uh so a lot of uh web 3 name services and supplement dns are both doing really interesting things um and and and also working with some of the bigger providers and also working with the browsers that weve been talking to as well so i think were going to see a lot of uh growth and maturity in that area and make it easier to be able to use human readable names with ipvs uh lastly some resources to be able to help you on your way one particular one if you are new to ipfs that i really recommend is called protoschool this is a set of tutorials that are in curriculum learning journey style to be able to help you understand what the primitive primitives of these systems are so uh you know as as you can tell from this talk here ipfest sits in a stack uh in a broader collection of technologies without even getting into uh ledgers and any blockchain stuff at all ipfs leadp2p multiformats ipld filecoin a number of different technologies um and protocol has a bunch of tutorials on that help you dive more deeply into each one of those individual pieces how is an ipfs address created what happens when you actually make a request what happens when when you add data to the network um these are all things that you can explore there uh if you want to follow along with us there are a number of resources here ipfess on twitter our forums discuss very active thats one of the number one places that i send people if they want to ask a question they wont be able to get an answer in a way that is crawlable searchable and findable by uh people uh that follow along in their footsteps the pound ipfs on freenode is also bridged to uh from irc to matrix so that has like 5000 people theres really a lot of books in there uh people answering questions on a regular basis uh uh our slash ipfs on reddit is also home to a number of good discussions and open questions where people go to ask for help on how to build things we also monitor the ipfs tag on stack overflow so basically anytime somebody answers a question or asks a question on stack overflow we go and look at those and try to answer those as quickly as possible to make sure that you can build your things in a way that is quick and easy and that we can help you along in shipping the things that you want to ship so that has been nearly an hour and thats really a lot of information uh i hope this was helpful we will be around in the ipfs support channel on discord for the chain link hackathon for the rest of the term of of the event uh please do ask questions uh if we cant answer well bring in more people or we will go and point you to the resources and various communities that can help but we will be there to try to help you over the hump as were building if you are a building with ipves also we have a bunch of prizes that uh are um on the website and keenan also just put them in the iphone support channel today as and pin them so thats a quick reminder of what the different categories are wed love to see the tools that you build and wed love to help you build them so thank you very much for having me for this uh epic walkthrough of a whole bunch of ipfs stuff uh definitely reach out if you want to learn more thank you fascinating stuff thank you so much dietrich for for joining us and sharing all that everyone i dropped your questions that were in the youtube channel uh into the discord uh since we run out of time definitely i cant see two screens at once yeah so all the questions will be the discord well be able to get those this afternoon but dietrich that was that was amazing this is the future the future of the internet its its fascinating stuff so hope we hope to do it yeah cool well thank you everyone and stay tuned uh we got some more workshops later today and then uh yeah thanks again dietrich Chainlink is a decentralized oracle network that enables smart contracts to securely access off-chain data feeds, web APIs, and traditional bank payments. Learn more about Chainlink Website Twitter Telegram If you’re a developer, visit the developer documentation or join the technical discussion on Discord