From 781cacbd33fbdf4edbd3eb22c636f83ab2e242cc Mon Sep 17 00:00:00 2001 From: Daniel N <2color@users.noreply.github.com> Date: Thu, 25 Jul 2024 16:16:31 +0200 Subject: [PATCH 1/5] feat: add Mainnet to the glossary --- docs/concepts/glossary.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/concepts/glossary.md b/docs/concepts/glossary.md index 8c2294a16..ea0762582 100644 --- a/docs/concepts/glossary.md +++ b/docs/concepts/glossary.md @@ -208,7 +208,7 @@ An experimental data store used when `--nocopy` is passed to `ipfs add`. It stor ### Gateway -An IPFS Gateway acts as a bridge between traditional web browsers and IPFS. Through the gateway, users can browse files and websites stored in IPFS as if they were stored on a traditional web server. [More about Gateway](../concepts/ipfs-gateway.md) and [addressing IPFS on the web](../how-to/address-ipfs-on-web.md) +An IPFS Gateway acts as a bridge between HTTP-based protocols and IPFS. Through the gateway, users can browse files and websites stored in IPFS as if they were stored on a HTTP web server. [More about Gateway](../concepts/ipfs-gateway.md) and [addressing IPFS on the web](../how-to/address-ipfs-on-web.md) ### Garbage Collection @@ -298,6 +298,10 @@ In IPFS and [IPLD](#ipld), a _link_ usually means a pointer to some [CID](#cid). ## M +### IPFS Mainnet + +IPFS Mainnet is a term used to describe the default or "main" network that many IPFS implementations connect to. Mainnet is a subset of all the [IPFS implementations](https://specs.ipfs.tech/architecture/principles/#ipfs-implementation-requirements) and typically includes implementations that connect to the [Amino DHT](#amino) and support [Bitswap](#bitswap), [UnixFS](#unixfs), and the [IPFS Gateway](#gateway). This has mostly been assumed for the IPFS network and is not emphasized for anyone other than protocol experts. Nonetheless, IPFS Mainnet is a useful distinction in a world of many [IPFS implementations](../concepts/implementations.md) with varying degrees of interoperability. + ### Merkle-DAG The Merkle-DAG is a computer science data structure used at the core of IPFS files/block storage. Merkle-DAGs create a hash to their content, known as a [Content Identifier](#cid). [More about Merkle-DAG](merkle-dag.md) From 41fcae11ec17a423a62010ef76c310a206aa300f Mon Sep 17 00:00:00 2001 From: Daniel N <2color@users.noreply.github.com> Date: Thu, 25 Jul 2024 16:18:30 +0200 Subject: [PATCH 2/5] feat: add principles and specs to the menu bar --- docs/.vuepress/config.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index 3e463d724..3bb48adfb 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -309,6 +309,10 @@ module.exports = { '/reference/': [ '/reference/diagnostic-tools', '/reference/http/gateway', + { + path: 'https://specs.ipfs.tech/architecture/principles/', + title: 'IPFS Principles', + }, '/reference/js/api', '/reference/go/api', { @@ -323,8 +327,11 @@ module.exports = { collapsable: true, path: '/reference/kubo/rpc' }, - '/reference/kubo-rpc-cli.md' - + '/reference/kubo-rpc-cli.md', + { + path: 'https://specs.ipfs.tech', + title: 'IPFS Specifications', + }, ], '/community/': [ ['/community/', 'Join the community'], From eacbb13470caf6c6bd4d9e0eebe849be7527154f Mon Sep 17 00:00:00 2001 From: Daniel N <2color@users.noreply.github.com> Date: Thu, 25 Jul 2024 16:17:28 +0200 Subject: [PATCH 3/5] chore: emphasize kubo for ipfs desktop --- docs/.vuepress/config.js | 8 ++++---- docs/install/ipfs-desktop.md | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index 3bb48adfb..ea212ca82 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -5,11 +5,11 @@ const SPEEDCURVE_ID = process.env.SPEEDCURVE_ID || '' const pageSuffix = '/' const installMenuChildren = [ - ['/install/command-line','IPFS Kubo for Go'], - ['/install/run-ipfs-inside-docker', 'IPFS Kubo in Docker'], + ['/install/ipfs-desktop', 'IPFS Desktop (Kubo)'], + ['/install/command-line','Kubo (CLI) '], + ['/install/run-ipfs-inside-docker', 'Kubo in Docker'], ['https://github.com/ipfs/helia','IPFS Helia for JavaScript'], ['https://iroh.computer/docs/install/', "IPFS Iroh for Rust"], - ['/install/ipfs-desktop', 'IPFS Desktop App'], ['/install/ipfs-companion', 'IPFS Companion Browser Extension'], ['/install/server-infrastructure', 'IPFS Cluster'] ] @@ -44,7 +44,7 @@ module.exports = { defaultImage: '/images/social-card.png', author: { name: 'IPFS Team', - twitter: '@ipfsbot' + twitter: '@ipfs' }, keywords: 'IPFS, dweb, protocol, libp2p, ipld, multiformats, bitswap, decentralized web, InterPlanetary File System, dapp, documentation, docs, Protocol Labs', diff --git a/docs/install/ipfs-desktop.md b/docs/install/ipfs-desktop.md index daaaf5175..1fbe1917b 100644 --- a/docs/install/ipfs-desktop.md +++ b/docs/install/ipfs-desktop.md @@ -5,9 +5,9 @@ description: IPFS Desktop gives you all the power of IPFS in a convenient deskto # Install the IPFS Desktop App -**IPFS Desktop bundles an IPFS node, file manager, peer manager, and content explorer into a single, easy-to-use application.** +**IPFS Desktop bundles a Kubo IPFS node, file manager, peer manager, and content explorer into a single, easy-to-use application.** -Use IPFS Desktop to get acquainted with IPFS without needing to touch the terminal — or, if you're already experienced, use the powerful menubar/taskbar shortcuts alongside the command line to make your IPFS workflow faster. +Use IPFS Desktop to get acquainted with [Kubo](https://github.com/ipfs/kubo/), a popular IPFS implementation without needing to touch the terminal — or, if you're already experienced, use the powerful menubar/taskbar shortcuts alongside the command line to make your IPFS workflow faster. If you already have an IPFS node on your computer, IPFS Desktop will act as a control panel and file browser for that node. If you don't have a node, it'll install one for you. And either way, IPFS Desktop will automatically check for updates. From 9e62d518de777d2fc48f7875e3e47e7796ada990 Mon Sep 17 00:00:00 2001 From: Daniel N <2color@users.noreply.github.com> Date: Thu, 25 Jul 2024 17:45:25 +0200 Subject: [PATCH 4/5] feat: add simpler explanation for CAR --- docs/concepts/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/concepts/glossary.md b/docs/concepts/glossary.md index ea0762582..2a2805d4a 100644 --- a/docs/concepts/glossary.md +++ b/docs/concepts/glossary.md @@ -76,7 +76,7 @@ A Bootstrap Node is a trusted peer on the IPFS network through which an IPFS nod ### CAR -The CAR (Content Addressable aRchives) is a format for serialized representation of any [IPLD](#ipld) [DAG](#dag). Typically in a file with a .car filename extension or a byte stream marked as [application/vnd.ipld.car](https://www.iana.org/assignments/media-types/application/vnd.ipld.car) media type. [More about CAR](https://ipld.io/specs/transport/car/) +The CAR (Content Addressable aRchives) is a format for serialized representation of any [IPLD](#ipld) [DAG](#dag). The CAR format is a way of packaging up content-addressed data into archive files that can be easily stored and transferred. Typically in a file with a `.car` filename extension or a byte stream marked as [application/vnd.ipld.car](https://www.iana.org/assignments/media-types/application/vnd.ipld.car) media type. [More about CAR](https://ipld.io/specs/transport/car/) ### CAR v1 From 6485578c26d62209dc8eb10258a75cc979c286f2 Mon Sep 17 00:00:00 2001 From: Daniel N <2color@users.noreply.github.com> Date: Thu, 25 Jul 2024 17:57:01 +0200 Subject: [PATCH 5/5] feat: new ipfs on the web docs page --- docs/.vuepress/config.js | 6 ++-- docs/.vuepress/redirects | 1 + docs/how-to/browser-tools-frameworks.md | 32 ----------------- docs/how-to/ipfs-on-the-web.md | 46 +++++++++++++++++++++++++ 4 files changed, 50 insertions(+), 35 deletions(-) delete mode 100644 docs/how-to/browser-tools-frameworks.md create mode 100644 docs/how-to/ipfs-on-the-web.md diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index ea212ca82..5c2d16276 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -253,12 +253,12 @@ module.exports = { ] }, { - title: 'IPFS in the browser', + title: 'IPFS on the web', sidebarDepth: 1, collapsable: true, children: [ + '/how-to/ipfs-on-the-web', '/how-to/address-ipfs-on-web', - '/how-to/browser-tools-frameworks' ] }, { @@ -275,7 +275,7 @@ module.exports = { collapsable: true, children: [ '/how-to/gateway-best-practices', - '/how-to/gateway-troubleshooting' + '/how-to/gateway-troubleshooting', ] }, { diff --git a/docs/.vuepress/redirects b/docs/.vuepress/redirects index e2954dfd7..92b46067a 100644 --- a/docs/.vuepress/redirects +++ b/docs/.vuepress/redirects @@ -40,6 +40,7 @@ /guides/guides/addressing/ /how-to/address-ipfs-on-web /guides/guides/install/ /install /how-to/host-single-page-site /how-to/websites-on-ipfs/single-page-website +how-to/browser-tools-frameworks /how-to/ipfs-on-the-web/ /how-to/troubleshoot-file-transfers /how-to/troubleshooting /how-to/run-ipfs-inside-docker /install/run-ipfs-inside-docker /install/command-line-quick-start/ /how-to/command-line-quick-start diff --git a/docs/how-to/browser-tools-frameworks.md b/docs/how-to/browser-tools-frameworks.md deleted file mode 100644 index 9ed1e49d7..000000000 --- a/docs/how-to/browser-tools-frameworks.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: Browser tools and frameworks -description: Information on how to use IPFS in combination with your favorite frameworks or browser implementation tools. ---- - -# Browser Tools and Frameworks - -Want to learn how to use IPFS in combination with your favorite framework or browser implementation tool? See below for some common examples, including hints and boilerplate code. Don't see your framework or tool of choice here? Let us know by [filing an issue](https://github.com/ipfs/ipfs-docs/issues/new?assignees=&labels=OKR+3%3A+Content+Improvement%2C+docs-ipfs&template=content-request.md&title=%5BCONTENT+REQUEST%5D+%20Browser%20Implementation%20Tools%20and%20Frameworks) in the IPFS docs GitHub repo. - -## Browserify - -[Example and boilerplate](https://github.com/ipfs-examples/js-ipfs-browser-browserify) you can use to guide yourself into bundling js-ipfs with browserify, so that you can use it in your own web app. - -## Parcel.js - -[Example and boilerplate application](https://github.com/ipfs-examples/js-ipfs-examples/tree/master/examples/browser-parceljs) that connects to IPFS using js-ipfs and is bundled with Parcel.js, so that you can follow it for creating Parcel.js bundled js-ipfs dapps. - -## Vue - -[Minimal demonstration](https://github.com/ipfs-examples/js-ipfs-examples/tree/master/examples/browser-vue) of how to use js-ipfs with Vue. - -## Webpack - -[Example and boilerplate](https://github.com/ipfs-examples/js-ipfs-examples/tree/master/examples/browser-webpack) you can use to guide yourself into bundling js-ipfs with webpack, so that you can use it in your own web app. - -## With a `