/r/ipfs
The InterPlanetary File System (IPFS) is a set of composable, peer-to-peer protocols for addressing, routing, and transferring content-addressed data in a decentralized file system.
Subreddit for the Interplanetary file system.
Community:
/r/ipfs
Hey everyone, POKT's Gateway Accelerator offering $25K grants to to build gateways on top protocols like IPFS. Could be a great chance to get your project off the ground with some real support!
You can apply here and DM me if you have any questions.
Hi,
I'm writing a opensource Caller ID app, considering using IPFS to store spam numbers. I'm new to IPFS, is IPFS database suitable for such use case?
Consider following aspects:
Users should be able to commit new numbers to it.
For example:
select
all numbers that were added within 24 hours. (for incrementally synchronizing to local database)
select
a particular number and get all matched results. (for checking in real time)
Only I should be able to modify it, users shouldn't be able to modify or delete anything.
I hope the numbers to be kept for as long as possible, maybe over a week or at least a day? But it should be fine if some numbers are removed sooner.
Is this possible? Thanks.
Hi peeps, Gala Games execs are claiming that their infrastructure is making most of the IPFS backbone run ... and i'm very, very, very dubious about it.
Is there a way someone could confirm/infirm this claim ? We're speaking about 28.000 Vultr-hosted nodes.
Is there a way to strictly download a file from a specific peer, the node should auto discover the peer multi address since the peer is behind a NAT so it will require hole punching, so basically i want to provide CID and peer id and the node should:
1- auto discovery multi address of this peer
2- connect to this peer(maybe using holepunching)
3- download the file identified by CID from only the supplied peer id
4- show the holepunching details
5- show the download rate from this peer
PS: preferably this should be done using helia since i don't have experience with go
Hello i have question how to Fixed this issue ? i have set this but not working "Routing": { "Type": "dht", "AcceleratedDHTClient": true } please explain me to fixed this issue iam newbie thanks
hi i have question how to Accelerated DHT config ? i have read this githubhttps://github.com/ipfs/kubo/blob/master/docs/config.md#routingaccelerateddhtc but i cannot found $IPFS_PATH/config file in directory and please explain to me thx
Hi,
Last time i tested ipfs was like a year ago, i remember that it was too slow to transfer the file using 2 machines i control one local and one remote in a distance, a lot has improved since then I'm sure so I'm asking this:
Are there any good public reviews/benchmarks comparing IPFS vs BitTorrent in terms of speed?
I know that speed depends on many factors like the popularity of the file/data, how many peers are online and their speed, but in theory one could share a file in both bittorrent(with all it's bells and whistles like dht and utp) and ipfs, and seed it from a controlled number of nodes/peers in the bittorrent and pin it from the same nodes/peers in ipfs and do the measurements.
one could also simulate these a virtual lab locally and apply some calculated throttling, but this won't really reflect real life experience.
Regards
Imagine using a cloud storage service that uses ipfs and you accidentally upload a let's say very private file that now you wish could delete. Isn't that a big issue?
I activated the AcceleratedDHTClient and my node reprovides the CID's every hour to the DHT. But I want to change the interval to 8h and set the option "RefreshInterval": "8h" in the routing section of the config.
The routing section looks like this:
"Routing": {
"AcceleratedDHTClient": true,
"Methods": null,
"RefreshInterval": "8h",
"Routers": null
},
But it doesn't show effect after restarting the node (without errors about the new config) - the node reprovides every hour, as can be seen in the traffic visualization. Any idea why this doesn't work and how to set the interval to 8h?
I'm simply looking for a way to keep my IPNS which is linked to my .eth address from expiring without needing a traditional server or needing to expose the private key to peers. Ideally, peers would view my site which would run javascript that updates the expiration on the IPNS.
Okay so gateway and rpc still communicate ipv4 but all the p2p communication runs on ipv6
I was eager to run an ipfs node on my vps and it worked out! Plus i could finally put the ip6 i. have on it to use. Had a few hiccups though. Getting docker to work with ipv6 was a huge hassle. I am not a networking guy so in order to get it right i used ipv6nat - https://github.com/robbertkl/docker-ipv6nat
I was sceptical if it works because of reports on github starting that kubo is in a horrible shape in all things ipv6. I adjusted the bootstrap list to the ipv6 nodes and successfully connected to about 100 peers! And my file was almost immediately on the ipfs public gateway.
This is cool software. ill leave the node running, the vps is mostly for development only so it has some big idle time which is now put to good use.
So yeah, just wanted to say this is in case anyone googles for ipfs on ipv6: it works, but requires some config. be patient 🫡😊
I have my homelab, and some other projects...but im noticing almost every guide is for public facing IPFS gateways or having it just be on the pc that needs access (access restricted to 127.0.0.1) why isnt it a thing to have a lan gateway? I can spin up the docker on my Pihole, or media server... and make that my lan gateway? redirecting ipfs.io dns to my local proxy would transparently do that for every device on my lan? am i missing something?
I created a web app library that can access IPFS directly from web2 without any extension, app, or setup. No centralized point of control either. A user on web2 can access IPFS content completely client side.
How though? Well to say, “I created” is quite the reach in such a statement, but hopefully grabbed attention. The Helia JS library allows you to create and utilize an IPFS node completely in memory. But by default can’t work in web browsers because of CORS security policies.
So, utilizing libp2p, web sockets, and setting up the nodes bootstrap list with p2p webrtc, we can resolve this issue. Thus, a fully functional and working IPFS node running in memory.
But in this state, we don’t have persistent data. Which is kind of a bummer. I nearly have this part complete, but utilizing IndexDB which will give us access to a large % of the users disk and changing helia from memory storage to blockstore and some custom code I’m writing to integrate the two. We can now not flood the users memory with files, but utilize disk as we’re supposed too. Plus, we can now have data persist and store across sessions. I’ve gotten 95% of the way there for the indexDB solution, but I’m hopeful that it will be successful in the end similar to my web rtc solution to resolve CORs.
So, now we can host a persistent IPFS node live behind the scenes of a website. The JS file I’ve written so far is 6MB in full. As I am extracting the non used parts of Helia and other stuff to debloat what’s not needed.
So we can now create a system where you can grab information over IPFS directly without a public gateway. At least once you first access the site that provides you the JS that’ll load in memory to begin this process.
Now I created the project IPFS Redirect:
https://magiccodingman.com/Ipfs-Redirect
last reddit post on subject:
https://www.reddit.com/r/ipfs/comments/1g4nbah/send_web3_domains_easily_ipfsredirect_update/
And since the last post, I’ve actually built in significant features that’ve gone unmentioned so far. As IPFS Redirect is a building block to a significantly greater vision I can see for the future of web3. Currently on version 5.2, but unmentioned TLDR is something akin to a decentralized rest API, significant stability to production level blockchain and IPFS interaction code via deployment protocols and code, aggressive caching strategies that bring use cases to web3 that I don’t think people even realize. That last comment I won’t go into to much detail, but I’ve implemented this aggressive caching technique in such a way that my centralized rest API for my own business has reduced bandwidth sent back out by 20% to 40% (depending on task) due to combining web2 and web3 together.
But I bring this up because this made me wonder about implementing a pretty large experimental upgrade into IPFS redirect as a whole.
Here’s kind of what I’m thinking. Note this example is a web2 and web3 combination technique of using IPFS redirect and makes it easy to translate the idea, but you can utilize IPFS redirect (and are supposed too) via full web3:
Going to: ipfsredirect.com/CID/Your_CID
Or: ipfsredirect.com/Web3/Your_Web3_Domain
Now currently this will send you to your CID via a public gateway if you don’t have the extension and app setup.
But I could instead of having it always shoot you to where you need to go via a public gateway (which for those who don’t know, IPFS redirect guarantees load without 500 errors, so it’s more than just using the public gateway). We could instead utilize this technique of hosting an IPFS node client side, which runs behind the scenes alongside a service worker which will capture network requests. This way when requests are going to be made via a public gateway, we can stop that action and control it to go through the local IPFS node instead.
This method would allow persistent data across different sites due to the node not losing the data, and direct access to IPFS, and removing public gateways from the equation entirely. Though there’s various potential con’s to this methodology as well.
Now another use case is developers implementing this code into their site directly, thus allowing the same idea, but you’ll still need to get your index.html loaded via a public gateway.
As for accessing files, not necessarily websites, won’t go into details, but this solution works perfect with no issues as far as I can see.
Basically a library can implement a node per website, or ipfs redirect can become effectively a PWA WASM tool that hosts an IPFS node on the users behalf to allow constant use of IPFS directly. Effectively being a no installation required, client side public gateway.
Plus note that tools of this consideration are meant to help bring adoption, not necessarily be a crutch. Goal is not to create something that doesn’t nudge or invoke others to eventually move towards setting up IPFS directly.
Don’t exactly know if anyone will read this far or understand per say what I’m getting across. But I’m kind of having a moment of, “We don’t really need public gateways at all. Those who don’t set up anything should utilize a local IPFS node running in the browser with zero setup.” By just going to a site, we can have an ipfs node running. And obviously this system wouldn’t be in affect at all if you have the companion app and desktop app.
Major down side to this idea comes down to the fact when the user leaves a web3 page, they’ll no longer be helping support the network. Note though I’m unsure supporting the network via a JS IPFS node in memory will work yet or not. As I’ve not only not tested that, I suspect various issues could occur. So another down side is to think of users who use this method as a “leech” per say. Similar/akin to an ultra light node in blockchains.
I have a working version of code that will host an IPFS node within a browser and can potentially be used per site or be persistent across web3 sites when utilized via my project ipfs redirect. Nearly have persistent data across sessions working as well. This entire process would allow web2 users to utilize IPFS/web3 directly without public gateways nor any kind of installation requirements. But unknown as of yet if this method will also be akin to read only light nodes in blockchains which effectively makes users using this method truly on web3, but they’re leeches on the network as they don’t contribute. Again, unknown if that portion is resolvable as I can foresee potential issues.
What do you think of the project, mission, and idea? Any additional input? Why is this not a more commonplace tactic?
Again, the end goal is to nudge, and bring others to web3 by getting the actual setup. But imo, if we want to talk about adoption. We need solutions where we can send a simple link and then it just opens without 500 errors, slow loads, or initial setup just to preview web3.
But I thought this was incredibly thought provoking. And would love feedback, ideas, or just any kind of pow wow on the subject.
I maybe shouldn't have talked about the ipfsredirect.com lol. I have no analytics on any of my web3 applications. The world could magically adopt ipfsredirect.unstoppable tomorrow and I'd have zero clue. Only feedback I have is via reddit or my new rest API that's centralized at ipfsredirect.com which I only have the default Azure analytics of only the number of requests that come in. I went from a few requests per day (which was me) to over 1.42k requests in 18 hours.
First of all, thank you! Second of all, I can't stress enough that api endpoints may change. I've publicly announced version 5.0 but not the current v5.2 for multiple reasons. Basically, I'm still deciding on how I want my architecture and protocol to work. So, endpoints may change! But this has been the first/only time I've ever seen any kind of data of use of my ipfs redirect project minus a few (but amazing) comments I've received in the past on Reddit.
It has made me wonder that maybe there's more who're interested than I realize? Don't know if it'd be wise on my end to create a way for others to follow the project and connect? Discord, github, or something else? Any ideas? Due to having no analytics in the spirit of decentralization, I am completely in the dark as to the interest in the project and use of the project.
I've made significant progress so far after my work hours on this project. Hard to place time for this as I'm incredibly passionate and interested and seeing this come to life. But between work, trying to get my heater fixed, and planning for a wedding, I honestly don't even know how I've spent as much time as I have!
But I am hoping to have an optional alpha release of this feature out on IPFS Redirect coming up. It will be specific to loading directories of files. Showcasing in my opinion a significantly better experience for file sharing with IPFS, but also showcasing accessing the ability to target a CID and after loading my code via a public gateway, being able to discontinue using the gateway entirely and begin to utilize IPFS directly on the users client side browser.
This actually is working for me right now, but I want this file share code I'm creating significantly cleaned up. As it's something I want to use too. I'll make another Reddit post when I release this feature. But right now, I have a completely working version of code that once it is accessed on your browser and initiates itself, it can truly access everything else dynamically on IPFS directly with no public gateway. It's pretty cool to see!
Are there any developers here or on Telegram who can answer some questions I have about IPFS’s integration with a NFT Marketplace project i’m working on?
Send others your web3 domain without them needing any extension!
Briefly. I developed an extremely small and lightweight redirect link that can guarantee users can load your IPFS link/website. I made an update to my open-source project so that you can now use this link to automatically resolve web3 domains without any additional extension! Share your web3 content easily!
I have an article on what IPFS-Redirect is and how it works with the video tutorials here:
https://magiccodingman.com/Ipfs-Redirect
My original Reddit post about IPFS-Redirect if you care to read the original post:
https://www.reddit.com/r/ipfs/comments/1fbcft0/just_released_ipfs_redirect_for_reliable_gateway/
Github here:
https://github.com/magiccodingman/Ipfs-Redirect/tree/main
Everything being used is all open source code. In the github link the "ResolveWeb3DomainVersions" folder will show the new resolve web3 domain being paired with the new ipfs redirect update Ipfs_Redirect_v5.html
Note, that as of right now, it works off the Unstoppable domains smart contract. And it utilizes the Polygon blockchain node to get your newest CID.
I can update it in the future to use any other web3 domain provider outside of Unstoppable domains, but I’m doing this for free and don’t want to pay for other domains to test on that I’m not going to use since I’m doing this for free. But it’s easy for me to add other smart web3 contracts with how I coded it, but I’ll only do it if others care.
Future updates will allow you to use your own RCP url as well in the name of decentralization.
Hope you enjoy it as well. Here’s a generated link to my web3 domain ipfsredirect.unstoppable that showcases that it works! Head to the redirect helper tab to build your own version of the link to send to others!
Here's another example of the generate link taking you to "ipfsredirect-version.unstoppable" with no extension required for the person using the link!
https://ipfs.io/ipfs/QmbYXSYQpGHLGEkLFPPXeRmRoRB3hMKMwLrVJ8oG4z6Y7Y?redirectURL=ipfsredirect-version.unstoppable&autoadapt=0&requiresorigin=0&web3domain=1&immediatecontinue=1&magiclibraryconfirmation=0&resolveweb3domain=1
Share web3 links easily that automatically update to the newest place! I was excited to share this new feature update.
I’m building a web app with Next.js and TypeScript. Need an IPFS API for file uploads and metadata management. What’s the best option in my case?
I have a CID that I’m trying to pin on my local IPFS node, but I’m running into an issue. The CID is available on the indexer with around 8 peers, but when I run ipfs pin add --progress <cid>
, it gets stuck at 'Fetched/Processed 0 nodes.' I’ve also tried adding peers using ipfs swarm connect <peer address>
, but it’s not helping. Has anyone experienced this before or know how to solve this?
Edit: Even tried ipfs routing findprovs <cid>
and its also giving a list of providers from local
I run my own business in logistics. Yesterday I received a bill for IPFS. Never heard of it. Upon a quick google search I discovered it’s a service you sign up for. I never signed up for it. Is this a scam potentially? I haven’t called IPFS just yet. I wanted to reach to see if anyone else had ever experienced this?
I uploaded a pretty small website (356 KB) to my node, but it never loads when I try to access it from another computer. I just always timeout. Am i missing something?
Here is the supposed link to the website:
https://ipfs.io/ipfs/QmY1Cb2bT2BewZJ2D1XHXGxL7GnPnMtCBqsHj3qTNKaM7P
Hey everyone,
I'm a senior CS student focusing on cybersecurity, and I'm totally stumped on what to do for my final project. For weeks, Been wracking my brain trying to come up with something and I've been thinking about doing something with IPFS, but I'm drawing a blank on a solid concept that "solves a problem or targets a business" (as my supervisor keeps reminding me).
Time's running out fast, and I need to pick an idea like yesterday. At this point, I need to pick a project idea ASAP. I'm open to suggestions- IPFS-related or not, but it'd be awesome if it ties into cybersecurity somehow. Anyone got any bright ideas? Cool projects you've seen? Weird problems you think need solving? I'm all ears.
Thanks a ton. You might just save my ...
Simply put, none of the public gateways work for me. They aren't just slow, but completely non-functional, even after days of trying and waiting around, the best I get is the directory listing of the stuff I put on IPFS, but trying to access the actual content times out all the time.
Once in a blue moon I find something that works, e.g. ipfs.flk-ipfs.io, but that literally disappeared the next day. Some like gateway.pinata.cloud seem to work, but don't allow some data types like HTML thus rendering them useless yet again. dweb.link or ipfs.io haven't resolved anything in ages.
Time to bury IPFS as failed experiment? Since none of this seems to be improving, quite the opposite, some years ago that worked all a lot smoother.
I just installed IPFS on my Mac M1 Mini, and everything is connected and is online, but I can't paste any CIDs into the browser/inspect bar, no matter what.
However, using the Browser Extension interface, it works.
What do I have setup wrong, or is this a bug?
Hi guys, so i am making this webapp for performance evaluation, and each user that i have quarterly they need to pass a document mainly a word file, is pinata a viable option?
And here's another question so i need to verify an email, using nodemailer, now the problem is i want to make my own verification, example i have /verify/[token] now i think its pretty straightforward get the token check in the dtaabsse if it exist then validate the user, but then the problem is the database i need a full decentralized option, im trying GUN js but is there a better alternative?