IPFS能夠經過瀏覽器插件來管理和使用,目前支持FireFox/Chrome/Brave。該項目源碼在 https://github.com/ipfs-shipyard/ipfs-companion ,還在開發之中,但已經能夠打開管理界面、URL地址轉換、服務器狀態顯示等功能。node
Browser extension that simplifies access to IPFS resourceswebpack
This add-on enables everyone to access IPFS resources the way they were meant: from locally running IPFS node :-)git
IPFS is a new hypermedia distribution protocol, addressed by content and identities. IPFS enables the creation of completely distributed applications. It aims to make the web faster, safer, and more open.github
Learn more at ipfs.io (it is really cool, we promise!)web
Requests for resources at IPFS-like paths (/ipfs/$cid
or /ipns/$peerid_or_fqdn
) are detected on any website.
If tested path is a valid IPFS address it gets redirected and loaded from a local gateway, e.g:
https://ipfs.io/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
→ http://127.0.0.1:8080/ipfs/QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
chrome
(some are disabled by default, use Preferences screen to enable)shell
ipns://$cid
ipns://$cid_or_fqdn
dweb:/ipfs/$cid
dweb:/ipns/$cid_or_fqdn
We recommend installing the add-on via your browser's add-on store.npm
Firefox | Chrome / Chromium |
---|---|
![]() |
![]() |
ipfs-companion
is designed to retrieve content from a locally running IPFS daemon. so make sure IPFS is installed on your computer.json
Install the latest signed release from AMO.c#
It will guarantee automatic updates to the latest version reviewed by Mozilla community.
Legacy versions 1.x.x
were based on currently deprecated Add-On SDK (Firefox-only).
While it is not maintained anymore, one can inspect, build and install it using codebase from legacy-sdk branch.
For historical background on the rewrite see Issue #20: Move to WebExtensions.
Install the latest signed release from Chrome Web Store.
Try manual installation:
Download Sources
Build it:
npm install npm run build
Load it into browser:
chrome://extensions
in the URL baradd-on/manifest.json
about:debugging
in the URL baradd-on/manifest.json
ipfs-companion
works in Brave. To try it out today you need to run brave from source, but we are working with Brave to get seamless IPFS support working out of the box. Track our progress here
ipfs-companion
as abovebrave/browser-laptop
ipfs-companion/add-on
dir to browser-laptop/app/extensions/ipfs
browser-laptop/app/extensions.js
// Enable IPFS extensionInfo.setState('ipfs', extensionStates.REGISTERED) loadExtension('ipfs', getExtensionsPath('ipfs'), undefined, 'component')
browser-laptop
project run npm install
then in separate shells run npm run watch
and npm start
. If you have any trouble running Brave from source, check: https://github.com/brave/browser-laptop#installationBrave will start up and you should see a badge with your number of connected ipfs peers next to the brave button, top right. (the ipfs-companion badge currently doesn't appear issue, pr). Click on the badge and update your gateway settings to use port 9090
, then go share something with your peers...
We are testing out embedding an ipfs node in the add-on background page. It's hidden by default currently.
To enable it, edit the package.json
file to remove...
"ipfs": false
...from the browser
section and run npm run build
. Note, don't set it to true
, as that's not how the browser module stubbing works
Feel free to join in. All welcome. Open an issue!
If you want to help in developing this extension, please see CONTRIBUTING page ✨
This repository falls under the IPFS Code of Conduct.
See this workaround.
By default NoScript breaks this addon by blocking assets loaded from IPFS Gateway running on localhost.
To make it work, one needs to extend the SYSTEM Rulset and prepend it with IPFS whitelist:
# Enable IPFS redirect to LOCAL Site ^http://127.0.0.1:8080/(ipfs|ipns)* Anonymize # Prevent Internet sites from requesting LAN resources. Site LOCAL Accept from LOCAL Deny
Feel free to modify it, but get familiar with ABE rule syntax first.
IPFS logo belongs to The IPFS Project and is licensed under a CC-BY-SA 3.0.
is-ipfs, js-multihash and other NPM dependencies are under MIT license, unless stated otherwise.
The add-on itself is released under CC0: to the extent possible under law, the author has waived all copyright and related or neighboring rights to this work, effectively placing it in the public domain.