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 the
ipfs application, see basic usage or any of the following reference documents:
- Configuration reference
- Installing command completion
- Mounting IPFS with FUSE
- Installing plugins
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:
go-ipfsto run IPFS directly in your own process. See the API reference.
go-ipfs-apito communicate with an IPFS daemon in a separate process via its HTTP API (this is what
go-ipfsdoes if a daemon is already running). See the API reference.
- Use other Go packages to communicate with the HTTP API directly. See the HTTP API reference.