Skip to content

Commit bc6a17b

Browse files
BigLeplidel
andauthored
Add IPFS Implementations page (#1193)
* Start of a bare-bones implementations page * Add ipfs-implementations.md to basics * Update basics/README.md * Update CLI instructions to denote they're for Kubo Co-authored-by: Marcin Rataj <[email protected]>
1 parent dfd89dc commit bc6a17b

File tree

4 files changed

+55
-7
lines changed

4 files changed

+55
-7
lines changed

docs/.vuepress/config.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,8 @@ module.exports = {
8686
path: '/basics/',
8787
children: [
8888
'basics/desktop-app',
89-
'basics/command-line'
89+
'basics/command-line',
90+
'basics/ipfs-implementations'
9091
]
9192
},
9293
{

docs/basics/README.md

+4
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,7 @@ Have an idea of what IPFS is but haven't really used it before? You should start
1818
![An IPFS daemon running in a terminal window.](./images/ipfs-command-line.png)
1919

2020
If you're a bit more serious about IPFS and want to start poking around the command-line interfact (CLI), then this section is for you. No buttons or images here; [just good-old-fashioned CLI interfaces and pipeable commands →](./command-line.md)
21+
22+
## Other implementations
23+
24+
There are many other IPFS implementations than the onramps discussed above. [Check them out here!](./ipfs-implementations.md)

docs/basics/command-line.md

+8-6
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,21 @@
11
---
22
title: "Command-line"
3-
description: "A simple walkthrough of how to perform basic IPFS operations using the command-line."
3+
description: "A simple walkthrough of how to perform basic IPFS operations using the Kubo command-line."
44
---
55

66
# Basic CLI Operations
77

8-
This short guide aims to walk you through the basics of using IPFS with the CLI. You will learn how to add, retrieve, read, and remove files within the CLI. If you are unsure about the meaning of some terms, you can check out the [glossary](../concepts/glossary.md).
8+
This short guide aims to walk you through the basics of using IPFS with the Kubo CLI. Kubo is [one of multiple IPFS implementations](.ipfs-implementations.md). It is the oldest IPFS implementation and exposes a CLI (among other things).
9+
10+
You will learn how to add, retrieve, read, and remove files within the CLI. If you are unsure about the meaning of some terms, you can check out the [glossary](../concepts/glossary.md).
911

1012
All instructions and examples shown here were performed and tested on an M1 Mac. However, the IPFS commands are the same on Linux, macOS, and Windows. You will need to know how to navigate your computer's directories from within the CLI. If you're unsure how to use the CLI, we recommend learning how before continuing with this guide.
1113

12-
## Install IPFS
14+
## Install Kubo
1315

14-
Next up, we need to install IPFS for the command-line. We have a great guide that will walk you through how to [install IPFS with the CLI](../install/command-line.md).
16+
Next up, we need to install Kubo for the command-line. We have a great guide that will walk you through how to [install Kubo with the CLI](../install/command-line.md).
1517

16-
Once you have IPFS installed, we need to get our node up and running. If this is your first time using IPFS, you will first need to initialize the configuration files:
18+
Once you have Kubo installed, we need to get our node up and running. If this is your first time using Kubo, you will first need to initialize the configuration files:
1719

1820
```shell
1921
ipfs init
@@ -55,7 +57,7 @@ Do not close the CLI that you used to initialize your daemon. Only terminate the
5557

5658
## Add files
5759

58-
Now that we have our IPFS node up and running, we're ready to add files to IPFS.
60+
Now that we have our Kubo IPFS node up and running, we're ready to add files to IPFS.
5961

6062
1. Within the CLI, navigate to the directory containing the file or folder you wish to share. In this example, we will navigate to the `~/Documents` directory:
6163

docs/basics/ipfs-implementations.md

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
title: IPFS Implementations
3+
description: Learn about the various IPFS implementations available for different usecases
4+
---
5+
6+
7+
**There isn't one canonical IPFS implementation.**
8+
9+
There is so much to explore in this space that it's ideal to have a plethora of implementations experimenting and optimizing for various usecases.
10+
11+
Below is a list of IPFS implementations that we know of in name alphabetical order.
12+
If you're aware of more, please add!
13+
14+
::: tip
15+
Looking into implementing IPFS yourself?
16+
Relevant specifications are listed in [ipfs/specs](https://github.com/ipfs/specs/).
17+
:::
18+
19+
20+
21+
| Name | URL | Language(s) |
22+
|------------------|-------------------------------------------------------------------------|------------------------|
23+
| Agregore | <https://github.com/AgregoreWeb/agregore-ipfs-daemon> | go, javascript |
24+
| barge | <https://github.com/application-research/estuary/tree/master/cmd/barge> | go |
25+
| Boost | <https://github.com/filecoin-project/boost> | go |
26+
| Elastic provider | <https://github.com/ipfs-elastic-provider/ipfs-elastic-provider> | javascript, typescript |
27+
| Estuary | <https://github.com/application-research/estuary/> | go |
28+
| gomobile-ipfs | <https://github.com/ipfs-shipyard/gomobile-ipfs> | go |
29+
| ipfs cluster | <https://github.com/ipfs/ipfs-cluster> | go |
30+
| ipfs tiny | <https://gitlab.com/librespacefoundation/ipfs-tiny> | c++ |
31+
| ipfs-embed | <https://github.com/ipfs-rust/ipfs-embed> | rust |
32+
| ipfs-lite | <https://github.com/hsanjuan/ipfs-lite> | go |
33+
| ipfs-nucleus | <https://github.com/peergos/ipfs-nucleus/>  | go |
34+
| ipget | <https://github.com/ipfs/ipget> | go |
35+
| iroh | <https://github.com/n0-computer/iroh> | rust |
36+
| js-ipfs | <https://github.com/ipfs/js-ipfs> | javascript, typescript |
37+
| Kubo | <https://github.com/ipfs/kubo> | go |
38+
| Lotus | <https://github.com/filecoin-project/lotus> | go |
39+
| py-ipfs | <https://github.com/ipfs-shipyard/py-ipfs> | python |
40+
| rust-ipfs | <https://github.com/rs-ipfs/rust-ipfs> | rust |
41+
| whypfs | <https://github.com/whyrusleeping/whypfs> | go |

0 commit comments

Comments
 (0)