Working with Go IPFS
go-ipfs
is the primary reference implementation of IPFS. It is a command-line application, but can also be used as a library in other Go programs.
For more about using go-ipfs
, see any of the following reference documents:
For more technical information about building, debugging or using the API, see:
- Performance Debugging Guidelines
- IPFS API Implementation
- Connecting with Websockets
- Building on…
- Additional guides at: https://github.com/ipfs/go-ipfs/blob/master/docs/
If you plan to use go-ipfs
as a package in your own Go application, you can take any of three main approaches:
- Use
go-ipfs
to run IPFS directly in your own process. See the CoreAPI constructor. - Use
go-ipfs-htp-client
to communicate with an IPFS daemon in a separate process via its HTTP API (this is whatgo-ipfs
does if a daemon is already running). See the http client. - Use other Go packages to communicate with the HTTP API directly. See the HTTP API reference.