orbitdb

package module
v1.22.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 4, 2023 License: Apache-2.0 Imports: 11 Imported by: 15

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.

Documentation

Overview

orbitdb implements the OrbitDB interface

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewOrbitDB

func NewOrbitDB(ctx context.Context, i coreapi.CoreAPI, options *NewOrbitDBOptions) (iface.OrbitDB, error)

NewOrbitDB Creates a new OrbitDB instance with default access controllers and store types

Types

type CreateDBOptions

type CreateDBOptions = iface.CreateDBOptions

CreateDBOptions An alias of the type defined in the iface package

type CreateDocumentDBOptions added in v1.12.0

type CreateDocumentDBOptions = iface.CreateDocumentDBOptions

CreateDocumentDBOptions An alias of the type defined in the iface package

type DetermineAddressOptions

type DetermineAddressOptions = iface.DetermineAddressOptions

DetermineAddressOptions An alias of the type defined in the iface package

type DocumentStore added in v1.12.0

type DocumentStore = iface.DocumentStore

DocumentStore An alias of the type defined in the iface package

type EventLogStore

type EventLogStore = iface.EventLogStore

EventLogStore An alias of the type defined in the iface package

type IndexConstructor

type IndexConstructor = iface.IndexConstructor

IndexConstructor An alias of the type defined in the iface package

type KeyValueStore

type KeyValueStore = iface.KeyValueStore

KeyValueStore An alias of the type defined in the iface package

type NewOrbitDBOptions

type NewOrbitDBOptions = baseorbitdb.NewOrbitDBOptions

NewOrbitDBOptions Options for a new OrbitDB instance

type OnWritePrototype

type OnWritePrototype = iface.OnWritePrototype

OnWritePrototype An alias of the type defined in the iface package

type OrbitDB

type OrbitDB = iface.OrbitDB

OrbitDB An alias of the type defined in the iface package

type Store

type Store = iface.Store

Store An alias of the type defined in the iface package

type StoreConstructor

type StoreConstructor = iface.StoreConstructor

StoreConstructor An alias of the type defined in the iface package

type StoreIndex

type StoreIndex = iface.StoreIndex

StoreIndex An alias of the type defined in the iface package

type StreamOptions

type StreamOptions = iface.StreamOptions

StreamOptions An alias of the type defined in the iface package

Directories

Path Synopsis
accesscontroller is a package handling permissions for OrbitDB stores
accesscontroller is a package handling permissions for OrbitDB stores
ipfs
ipfs is an access controller
ipfs is an access controller
orbitdb
orbitdb is an access controller for OrbitDB stores
orbitdb is an access controller for OrbitDB stores
simple
simple is an access controller without any persistence
simple is an access controller without any persistence
utils
utils is a package containing tools related to access controllers
utils is a package containing tools related to access controllers
Package address is a package for managing OrbitDB addresses
Package address is a package for managing OrbitDB addresses
baseorbitdb package containing the base implementation of OrbitDB
baseorbitdb package containing the base implementation of OrbitDB
cache is a package defining the interface of cache factories
cache is a package defining the interface of cache factories
cacheleveldown
cacheleveldown is a package returning level db data stores for OrbitDB
cacheleveldown is a package returning level db data stores for OrbitDB
events defines an event subscriber and dispatcher Deprecated: use EventBus instead
events defines an event subscriber and dispatcher Deprecated: use EventBus instead
iface package containing common structures and interfaces of orbitdb
iface package containing common structures and interfaces of orbitdb
internal
Package messagemarshaler is a package for marshal messages
Package messagemarshaler is a package for marshal messages
pubsub a publish subscribe client for IPFS PubSub
pubsub a publish subscribe client for IPFS PubSub
directchannel
directchannel
directchannel
oneonone
oneonone is a pubsub channel for communication between two peers
oneonone is a pubsub channel for communication between two peers
pubsubcoreapi
pubsubcoreapi pubsub helpers using IPFS CoreAPI
pubsubcoreapi pubsub helpers using IPFS CoreAPI
pubsubraw
pubsubraw pubsub helpers using IPFS Golang implementation
pubsubraw pubsub helpers using IPFS Golang implementation
stores registers constructors for OrbitDB stores
stores registers constructors for OrbitDB stores
basestore
basestore defines a set of operations common to the different store types
basestore defines a set of operations common to the different store types
documentstore
documentstore a document store for OrbitDB
documentstore a document store for OrbitDB
eventlogstore
eventlogstore an event log store for OrbitDB
eventlogstore an event log store for OrbitDB
kvstore
kvstore a key value store for OrbitDB
kvstore a key value store for OrbitDB
operation
operation a serializable operation that can be appended to IPFS log
operation a serializable operation that can be appended to IPFS log
replicator
replicator is a package managing the replication of data among peers
replicator is a package managing the replication of data among peers
tests is a package containing tests and tools for testing orbitdb
tests is a package containing tests and tools for testing orbitdb
utils contains functions that are useful in some context
utils contains functions that are useful in some context

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL