UNPKG

6.69 kBMarkdownView Raw
1> # ⛔️ DEPRECATED: [js-IPFS](https://github.com/ipfs/js-ipfs) has been superseded by [Helia](https://github.com/ipfs/helia)
2>
3> 📚 [Learn more about this deprecation](https://github.com/ipfs/js-ipfs/issues/4336) or [how to migrate](https://github.com/ipfs/helia/wiki/Migrating-from-js-IPFS)
4>
5> ⚠️ If you continue using this repo, please note that security fixes will not be provided
6
7# ipfs <!-- omit in toc -->
8
9[![ipfs.tech](https://img.shields.io/badge/project-IPFS-blue.svg?style=flat-square)](https://ipfs.tech)
10[![Discuss](https://img.shields.io/discourse/https/discuss.ipfs.tech/posts.svg?style=flat-square)](https://discuss.ipfs.tech)
11[![codecov](https://img.shields.io/codecov/c/github/ipfs/js-ipfs.svg?style=flat-square)](https://codecov.io/gh/ipfs/js-ipfs)
12[![CI](https://img.shields.io/github/actions/workflow/status/ipfs/js-ipfs/test.yml?branch=master\&style=flat-square)](https://github.com/ipfs/js-ipfs/actions/workflows/test.yml?query=branch%3Amaster)
13
14> JavaScript implementation of the IPFS specification
15
16## Table of contents <!-- omit in toc -->
17
18- [Install](#install)
19- [Getting Started](#getting-started)
20 - [Next Steps](#next-steps)
21- [Want to hack on IPFS?](#want-to-hack-on-ipfs)
22- [License](#license)
23- [Contribute](#contribute)
24
25## Install
26
27```console
28$ npm i ipfs
29```
30
31<p align="center">
32 <a href="https://js.ipfs.io" title="JS IPFS">
33 <img src="https://ipfs.io/ipfs/Qme6KJdKcp85TYbLxuLV7oQzMiLremD7HMoXLZEmgo6Rnh/js-ipfs-sticker.png" alt="IPFS in JavaScript logo" width="244" />
34 </a>
35</p>
36
37<h3 align="center">An <a href="https://docs.ipfs.io/basics/ipfs-implementations/">IPFS protocol implementation</a> written in JS</h3>
38
39<p align="center">
40 <a href="https://github.com/ipfs/js-ipfs/tree/master/packages/interface-ipfs-core"><img src="https://img.shields.io/badge/interface--ipfs--core-API%20Docs-blue.svg"></a>
41 <a href="https://travis-ci.com/ipfs/js-ipfs?branch=master"><img src="https://badgen.net/travis/ipfs/js-ipfs?branch=master" /></a>
42 <a href="https://codecov.io/gh/ipfs/js-ipfs"><img src="https://badgen.net/codecov/c/github/ipfs/js-ipfs" /></a>
43 <a href="https://bundlephobia.com/result?p=ipfs"><img src="https://badgen.net/bundlephobia/minzip/ipfs"></a>
44 <a href="https://david-dm.org/ipfs/js-ipfs?path=packages/ipfs"><img src="https://david-dm.org/ipfs/js-ipfs.svg?style=flat&path=packages/ipfs" /></a>
45 <a href="https://github.com/feross/standard"><img src="https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat"></a>
46 <a href=""><img src="https://img.shields.io/badge/npm-%3E%3D6.0.0-orange.svg?style=flat" /></a>
47 <a href=""><img src="https://img.shields.io/badge/Node.js-%3E%3D10.0.0-orange.svg?style=flat" /></a>
48 <a href="https://www.npmjs.com/package/ipfs"><img src="https://img.shields.io/npm/dm/ipfs.svg" /></a>
49 <a href="https://www.jsdelivr.com/package/npm/ipfs"><img src="https://data.jsdelivr.com/v1/package/npm/ipfs/badge"/></a>
50 <br>
51</p>
52
53`ipfs` is the core API, a CLI and a HTTP server that functions as a HTTP to IPFS bridge and an RPC endpoint.
54
55If you want to integrate IPFS into your application without including a CLI or HTTP server, see the [ipfs-core](https://github.com/ipfs/js-ipfs/tree/master/packages/ipfs-core) module.
56
57## Getting Started
58
59Installing `ipfs` globally will give you the `jsipfs` command which you can use to start a daemon running:
60
61```console
62$ npm install -g ipfs
63$ jsipfs daemon
64Initializing IPFS daemon...
65js-ipfs version: x.x.x
66System version: x64/darwin
67Node.js version: x.x.x
68Swarm listening on /ip4/127.0
69.... more output
70```
71
72You can then add a file:
73
74```console
75$ jsipfs add ./hello-world.txt
76added QmXXY5ZxbtuYj6DnfApLiGstzPN7fvSyigrRee3hDWPCaf hello-world.txt
77```
78
79### Next Steps
80
81- Read the [docs](https://github.com/ipfs/js-ipfs/tree/master/docs)
82- Look into the [examples](https://github.com/ipfs-examples/js-ipfs-examples) to learn how to spawn an IPFS node in Node.js and in the Browser
83- Consult the [Core API docs](https://github.com/ipfs/js-ipfs/tree/master/docs/core-api) to see what you can do with an IPFS node
84- Head over to <https://proto.school> to take interactive tutorials that cover core IPFS APIs
85- Check out <https://docs.ipfs.io> for tips, how-tos and more
86- See <https://blog.ipfs.io> for news and more
87- Need help? Please ask 'How do I?' questions on <https://discuss.ipfs.io>
88
89## Want to hack on IPFS?
90
91[![](https://cdn.rawgit.com/jbenet/contribute-ipfs-gif/master/img/contribute.gif)](https://github.com/ipfs/community/blob/master/CONTRIBUTING.md)
92
93This IPFS implementation in JavaScript needs your help! There are a few things you can do right now to help out:
94
95Read the [Code of Conduct](https://github.com/ipfs/community/blob/master/code-of-conduct.md) and [JavaScript Contributing Guidelines](https://github.com/ipfs/community/blob/master/CONTRIBUTING_JS.md).
96
97- **Check out existing issues** The [issue list](https://github.com/ipfs/js-ipfs/issues) has many that are marked as ['help wanted'](https://github.com/ipfs/js-ipfs/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22help+wanted%22) or ['difficulty:easy'](https://github.com/ipfs/js-ipfs/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3Adifficulty%3Aeasy) which make great starting points for development, many of which can be tackled with no prior IPFS knowledge
98- **Perform code reviews** More eyes will help
99 a. speed the project along
100 b. ensure quality, and
101 c. reduce possible future bugs.
102- **Add tests**. There can never be enough tests.
103
104Find out about chat channels, the IPFS newsletter, the IPFS blog, and more in the [IPFS community space](https://docs.ipfs.io/community/).
105
106## License
107
108Licensed under either of
109
110- Apache 2.0, ([LICENSE-APACHE](LICENSE-APACHE) / <http://www.apache.org/licenses/LICENSE-2.0>)
111- MIT ([LICENSE-MIT](LICENSE-MIT) / <http://opensource.org/licenses/MIT>)
112
113## Contribute
114
115Contributions welcome! Please check out [the issues](https://github.com/ipfs/js-ipfs/issues).
116
117Also see our [contributing document](https://github.com/ipfs/community/blob/master/CONTRIBUTING_JS.md) for more information on how we work, and about contributing in general.
118
119Please be aware that all interactions related to this repo are subject to the IPFS [Code of Conduct](https://github.com/ipfs/community/blob/master/code-of-conduct.md).
120
121Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
122
123[![](https://cdn.rawgit.com/jbenet/contribute-ipfs-gif/master/img/contribute.gif)](https://github.com/ipfs/community/blob/master/CONTRIBUTING.md)