MCPcopy Index your code
hub / github.com/berty/go-orbit-db

github.com/berty/go-orbit-db @v1.22.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.22.2 ↗ · + Follow
583 symbols 1,967 edges 86 files 217 documented · 37% 1 cross-repo links
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

go-orbit-db

🤝 Go version of orbit-db.

Code Factor Go Report Card GitHub version Coverage GoDoc

berty.techGitHub

A P2P Database on IPFS.

orbit-db is a distributed peer-to-peer database on IPFS. This project intends to provide a fully compatible port of the JavaScript version in Go.

The majority of this code was vastly derived from the JavaScript's orbit-db project.

Usage

See GoDoc.

Install

Constraints:

  • go-orbit-db currently only works with go1.16 and later
  • You need to use the canonical import: berty.tech/go-orbit-db instead of github.com/berty/go-orbit-db
  • If you have 410 gone errors, make sure that you use a reliable $GOPROXY or disable it completely

Example:

$ go version
go version go1.17.3 darwin/amd64
$ go get berty.tech/go-orbit-db
[...]
$

Licensing

go-orbit-db is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Extension points exported contracts — how you extend this code

StoreIndex (Interface)
StoreIndex Index contains the state of a datastore, ie. what data we currently have. Index receives a call from a Store [5 …
iface/interface.go
Operation (Interface)
Operation Describe an CRDT operation [1 implementers]
stores/operation/interface.go
Replicator (Interface)
Replicator Replicates stores information among peers [1 implementers]
stores/replicator/interface.go
EmitterInterface (Interface)
EmitterInterface Root interface for events dispatch [1 implementers]
events/events.go
Address (Interface)
Address A store address [1 implementers]
address/address.go
ManifestParams (Interface)
ManifestParams List of getters for a manifest parameters [1 implementers]
accesscontroller/manifest.go
Interface (Interface)
Interface Cache interface
cache/interface.go
Interface (Interface)
Interface The interface for OrbitDB Access Controllers
accesscontroller/interface.go

Core symbols most depended-on inside this repo

String
called by 184
address/address.go
Close
called by 128
iface/interface.go
GetHash
called by 95
stores/replicator/queue.go
GetEntry
called by 80
stores/operation/interface.go
GetValue
called by 46
stores/operation/interface.go
List
called by 46
iface/interface.go
Get
called by 46
iface/interface.go
Address
called by 43
iface/interface.go

Shape

Method 354
Function 118
Struct 70
Interface 32
FuncType 6
TypeAlias 3

Languages

Go100%

Modules by API surface

iface/interface.go106 symbols
stores/basestore/base_store.go43 symbols
baseorbitdb/orbitdb.go37 symbols
accesscontroller/manifest.go31 symbols
stores/replicator/replicator.go20 symbols
stores/replicator/interface.go18 symbols
stores/events.go16 symbols
events/events.go16 symbols
accesscontroller/orbitdb/accesscontroller_orbitdb.go16 symbols
cache/cacheleveldown/leveldown.go15 symbols
accesscontroller/ipfs/accesscontroller_ipfs.go15 symbols
stores/operation/operation.go14 symbols

Used by 1 indexed graphs manifest dependencies, hub-wide

For agents

$ claude mcp add go-orbit-db \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact