Skip to content

Latest commit

 

History

History
116 lines (91 loc) · 9.83 KB

README.md

File metadata and controls

116 lines (91 loc) · 9.83 KB

Erebos Build Status Gitter Last release

JavaScript client and CLI for Swarm.

Installation

Node.js v10+ is required to use the Node.js APIs and run the CLI.

Client library

npm install @erebos/swarm-browser # browser-only
npm install @erebos/swarm-node # node-only
npm install @erebos/swarm # universal

CLI

npm install -g @erebos/cli

Packages

Platform symbols

⚛️ Electron | ⚙️ Node | 📱 React-Native | 🌐 Web browsers

Name Version Platform Description
Clients
@erebos/swarm npm version ⚛️ ⚙️ 🌐 Universal Erebos library for Swarm
@erebos/swarm-browser npm version 🌐 Browser-only Erebos library for Swarm
@erebos/swarm-node npm version ⚛️ ⚙️ Electron and Node Erebos library for Swarm
CLI
@erebos/cli npm version
Individual Swarm APIs
@erebos/bzz npm version ⚛️ ⚙️ 📱 🌐 Core Swarm (BZZ) APIs
@erebos/bzz-browser npm version 🌐 Browser-only Swarm (BZZ) APIs
@erebos/bzz-node npm version ⚛️ ⚙️ Electron and Node Swarm (BZZ) APIs
@erebos/bzz-react-native npm version 📱 Experimental React Native Swarm (BZZ) APIs
@erebos/pss npm version ⚛️ ⚙️ 📱 🌐 Postal Services over Swarm (PSS) APIs
Additional Swarm APIs
@erebos/bzz-feed npm version ⚛️ ⚙️ 📱 🌐 Swarm feeds interactions
@erebos/bzz-fs npm version ⚛️ ⚙️ File system interactions
Data structures
@erebos/feed-list npm version ⚛️ ⚙️ 📱 🌐 List APIs using raw Swarm feeds
@erebos/doc-sync npm version ⚛️ ⚙️ 📱 🌐 JSON documents synchronization using CRDTs
@erebos/timeline npm version ⚛️ ⚙️ 📱 🌐 Feed-based Timeline APIs
Ethereum and Swarm utilities
@erebos/hex npm version ⚛️ ⚙️ 📱 🌐 Hexadecimal values encoding and decoding
@erebos/keccak256 npm version ⚛️ ⚙️ 🌐 Keccak256 hashing
@erebos/secp256k1 npm version ⚛️ ⚙️ 🌐 ECDSA key creation and signing using the SECP256k1 curve
@erebos/wallet-hd npm version ⚛️ ⚙️ Hierarchical Deterministic wallet
RPC utilities
@erebos/rpc-error npm version ⚛️ ⚙️ 📱 🌐 RPC error class and factories
@erebos/rpc-handler npm version ⚛️ ⚙️ RPC requests handling helpers
@erebos/rpc-request npm version ⚛️ ⚙️ Stateless RPC client class
@erebos/rpc-stream npm version ⚛️ ⚙️ Statefull RPC client class
@erebos/rpc-http-browser npm version 🌐 RPC client factory over HTTP for browsers
@erebos/rpc-http-node npm version ⚙️ RPC client factory over HTTP for Node
@erebos/rpc-ws-browser npm version 🌐 RPC client factory over WebSocket for browsers
@erebos/rpc-ws-node npm version ⚙️ RPC client factory over WebSocket for Node
@erebos/rpc-ipc npm version ⚙️ RPC client factory over IPC
@erebos/rpc-browser npm version 🌐 RPC client factory for browsers
@erebos/rpc-electron npm version ⚛️ RPC client factory for Electron
@erebos/rpc-node npm version ⚙️ RPC client factory for Node
Transports
@erebos/transport-http-browser npm version 🌐 HTTP transport for browsers
@erebos/transport-http-node npm version ⚙️ HTTP transport for Node
@erebos/transport-ws-browser npm version 🌐 WebSocket transport for browsers
@erebos/transport-ws-node npm version ⚙️ WebSocket transport for Node
@erebos/transport-electron npm version ⚛️ IPC transport for Electron
@erebos/transport-ipc npm version ⚙️ IPC transport for Node
Base classes
@erebos/client-base npm version ⚛️ ⚙️ 📱 🌐 Shared logic for Client APIs
@erebos/rpc-base npm version ⚛️ ⚙️ 📱 🌐 Shared logic for RPC clients

Development

Prerequisites

Setup

yarn install
yarn start

Running tests

In one terminal window run:

./start_swarm_node.sh

And in the second one run:

yarn test:all

License

MIT.
See LICENSE file.