Skip to content

Commit d80a06a

Browse files
authored
docs(README): Features from v2.5.0
1 parent 9367d47 commit d80a06a

File tree

1 file changed

+28
-9
lines changed

1 file changed

+28
-9
lines changed

README.md

+28-9
Original file line numberDiff line numberDiff line change
@@ -36,31 +36,52 @@ Learn more at [ipfs.io](https://ipfs.io) (it is really cool, we promise!)
3636

3737
## Features
3838

39-
#### Automagical Detection of IPFS Resources
39+
### Automagical Detection of IPFS Resources
4040

41-
Requests for IPFS-like paths (`/ipfs/$cid` or `/ipns/$peerid_or_fqdn-with-dnslink`) are detected on any website.
42-
If tested path is a valid IPFS address it gets redirected and loaded from a local gateway, e.g:
41+
#### IPFS Path in URL
42+
43+
Requests for IPFS-like paths (`/ipfs/{cid}` or `/ipns/{peerid_or_host-with-dnslink}`) are detected on any website.
44+
If tested path is a [valid IPFS address](https://github.com/ipfs/is-ipfs) it gets redirected and loaded from a local gateway, e.g:
4345
> `https://ipfs.io/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR`
4446
> `http://127.0.0.1:8080/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR`
4547
48+
#### DNSLink
49+
50+
Companion will detect presence of [DNSLink](https://docs.ipfs.io/guides/concepts/dnslink/) in DNS records of visited websites and redirect HTTP request to a local gateway.
51+
52+
> `http://docs.ipfs.io`
53+
> `http://127.0.0.1:8080/ipns/docs.ipfs.io`
54+
55+
This means if you visit websites with a valid DNSLink (eg. http://docs.ipfs.io, http://ipld.io, http://libp2p.io, http://tr.wikipedia-on-ipfs.org) browser will load them from IPFS.
56+
57+
More details: [DNSLink Support in IPFS Companion](https://github.com/ipfs-shipyard/ipfs-companion/blob/master/docs/dnslink.md)
58+
59+
#### X-Ipfs-Path
60+
61+
Companion will upgrade transport to IPFS if the header is found in any HTTP response headers. This is a fallback for edge cases when IPFS path is not present in URL.
62+
63+
More details: [`x-ipfs-path` Header Support in IPFS Companion](https://github.com/ipfs-shipyard/ipfs-companion/blob/master/docs/x-ipfs-path-header.md)
64+
65+
#### Redirect Opt-Out
66+
4667
It is possible to opt-out from redirect by
4768
a) suspending extension via global toggle
4869
b) including `x-ipfs-companion-no-redirect` in the URL (as a [hash](https://ipfs.io/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR#x-ipfs-companion-no-redirect) or [query](https://ipfs.io/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR?x-ipfs-companion-no-redirect) parameter).
4970

50-
#### IPFS API as `window.ipfs`
71+
### IPFS API as `window.ipfs`
5172

5273
Your IPFS node is exposed as `window.ipfs` on every webpage.
5374
Websites can detect if `window.ipfs` exists and opt-in to use it instead of creating their own `js-ipfs` node.
5475
It saves system resources and battery (on mobile), avoids the overhead of peer discovery/connection, enables shared repository access and more!
5576
Make sure to read our [notes on `window.ipfs`](https://github.com/ipfs-shipyard/ipfs-companion/blob/master/docs/window.ipfs.md), where we explain it in-depth and provide examples on how to use it your own dapp.
5677

57-
#### Toggle IPFS Integrations
78+
### Toggle IPFS Integrations
5879

5980
> ![screenshot of suspend toggle](https://user-images.githubusercontent.com/157609/42685002-18c7cee4-8692-11e8-9171-970866d91ae0.gif)
6081
6182
The Browser Action pop-up provides a toggle for suspending all active IPFS integrations with a single click.
6283

63-
#### IPFS Status and Context Actions
84+
### IPFS Status and Context Actions
6485

6586
- IPFS API and Gateway status
6687
- Add local (quick upload) or remote files (context menu) to IPFS with option to preserve filename
@@ -71,7 +92,7 @@ The Browser Action pop-up provides a toggle for suspending all active IPFS integ
7192
- Copy canonical IPFS address
7293
- Copy shareable URL to resource at preferred public gateway
7394

74-
#### Experiments!
95+
### Experiments!
7596

7697
_(some are disabled by default, use Preferences screen to enable)_
7798

@@ -80,9 +101,7 @@ _(some are disabled by default, use Preferences screen to enable)_
80101
- `ipns://$cid_or_fqdn`
81102
- `dweb:/ipfs/$cid`
82103
- `dweb:/ipns/$cid_or_fqdn`
83-
- Detect domains with [dnslink](https://github.com/jbenet/go-dnslink) in DNS TXT record and load them from IPFS
84104
- Make plaintext IPFS links clickable ([demo](https://ipfs.io/ipfs/bafybeidvtwx54qr44kidymvhfzefzxhgkieigwth6oswk75zhlzjdmunoy/linkify-demo.html))
85-
- Mirror to IPFS by right click on any image or video
86105
- Switch between _External_ HTTP API and _Embedded_ js-ipfs node. Read about differences at [docs/node-types](docs/node-types.md).
87106
> [![screenshot of node type switch](https://user-images.githubusercontent.com/157609/42382479-b4d98768-8134-11e8-979c-69b758846bf0.png)](https://github.com/ipfs-shipyard/ipfs-companion/blob/master/docs/node-types.md)
88107

0 commit comments

Comments
 (0)