go-ipfs: github.com/ipfs/go-ipfs Index | Files | Directories

package ipfs

import "github.com/ipfs/go-ipfs"

IPFS is a global, versioned, peer-to-peer filesystem

There are sub-packages within the ipfs package for various low-level utilities, which are in turn assembled into:

core/...:

The low-level API that gives consumers all the knobs they need,
which we try hard to keep stable.

shell/...:

The high-level API that gives consumers easy access to common
operations (e.g. create a file node from a reader without wrapping
with metadata). We work really hard to keep this stable.

Then on top of the core/... and shell/... Go APIs, we have:

cmd/...:

Command-line executables

test/...:

Integration tests, etc.

To avoid cyclic imports, imports should never pull in higher-level APIs into a lower-level package. For example, you could import all of core and shell from cmd/... or test/..., but you couldn't import any of shell from core/....

Index

Package Files

doc.go version.go

Constants

const ApiVersion = "/go-ipfs/" + CurrentVersionNumber + "/"
const CurrentVersionNumber = "0.4.20-dev"

CurrentVersionNumber is the current application's version literal

Variables

var CurrentCommit string

CurrentCommit is the current git commit, this is set as a ldflag in the Makefile

Directories

PathSynopsis
assets
blocks/blockstoreutilPackage blockstoreutil provides utility functions for Blockstores.
cmd/ipfscmd/ipfs implements the primary CLI binary for ipfs
cmd/ipfs/util
cmd/ipfswatch
cmd/seccatpackage main provides an implementation of netcat using the secio package.
commands
corePackage core implements the IpfsNode object and related methods.
core/commandsPackage commands implements the ipfs command interface
core/commands/cmdenv
core/commands/dag
core/commands/e
core/commands/name
core/commands/object
core/commands/unixfs
core/coreapiPackage coreapi provides direct access to the core commands in IPFS.
core/coredag
core/corehttpPackage corehttp provides utilities for the webui, gateways, and other high-level HTTP interfaces to IPFS.
core/corerepo
core/coreunix
core/mock
dagutils
exchange/reprovide
filestorePackage filestore implements a Blockstore which is able to read certain blocks of data directly from its original location in the filesystem.
filestore/pb
fuse/ipnspackage fuse/ipns implements a fuse filesystem that interfaces with ipns, the naming system for ipfs.
fuse/mountpackage mount provides a simple abstraction around a mount point
fuse/node
fuse/readonlypackage fuse/readonly implements a fuse filesystem to access files stored inside of ipfs.
keystore
namesysPackage namesys implements resolvers and publishers for the IPFS naming system (IPNS).
namesys/republisher
p2p
pinPackage pin implements structures and methods to keep track of which objects a user wants to keep stored locally.
pin/gcPackage gc provides garbage collection for go-ipfs.
pin/internal/pb
plugin
plugin/loader
plugin/plugins/badgerds
plugin/plugins/flatfs
plugin/plugins/git
plugin/plugins/levelds
repo
repo/common
repo/fsrepopackage fsrepo
repo/fsrepo/migrations
tar
thirdparty/assert
thirdparty/cidv0v1
thirdparty/dir
thirdparty/math2
thirdparty/notifierPackage notifier provides a simple notification dispatcher meant to be embedded in larger structres who wish to allow clients to sign up for event notifications.
thirdparty/pollEndpointpollEndpoint is a helper utility that waits for a http endpoint to be reachable and return with http.StatusOK
thirdparty/unit
thirdparty/verifbs

Package ipfs is imported by 15 packages. Updated 2019-03-19. Refresh now. Tools for package owners.