Giter Site home page Giter Site logo

bee-js's Introduction

Bee-js

Node.js tests Dependency Status standard-readme compliant js-standard-style

Client library for connecting to Bee distributed storage

Warning: This project is in alpha state. There might (and most probably will) be changes in the future to its API and working. Also, no guarantees can be made about its stability, efficiency, and security at this stage.

Table of Contents

Install

npm

> npm install @ethersphere/bee-js

Use in Node.js

var Bee = require("@ethersphere/bee-js");

Use in a browser with browserify, webpack or any other bundler

var Bee = require("@ethersphere/bee-js");

Use in a browser Using a script tag

Loading this module through a script tag will make the Bee object available in the global namespace.

<script src="https://unpkg.com/@ethersphere/bee-js/dist/index.js"></script>

Usage

import Bee from "@ethersphere/bee-js"; // Connect to a node const

bee = new Bee("http://localhost:1633");

const fileHash = await bee.uploadData("Bee is awesome!");
const retrievedData = await bee.downloadData(fileHash);

console.log(retrievedData.toString()); // prints 'Bee is awesome!'

Api

The API documentation is not yet hosted anywhere, but you can generate JSdocs with:

npm run docs

The generated docs can be viewed in browser by opening ./docs/index.html

Contribute

There are some ways you can make this module better:

  • Consult our open issues and take on one of them
  • Help our tests reach 100% coverage!

Setup

Install project dependencies with

npm i

Test

The tests run in both context: node and jsdom with Jest.

To run the test, you need to have a Bee cluster running locally. To create a cluster, please consult the readme of @ethersphere/bee-local.

By defaul tests are run against local bee node 0 - http://bee-0.localhost. You can change it by setting environment variable BEE_URL.

In Visual Studio environment, the tests have been set up to run against your local bee node on http://localhost:1633 To run Jest tests, choose the vscode-jest-tests CI job under the Run tab. You can run your own local Bee client for test purposes with the help of test/bee.sh. If you pass --ephemeral flag, the container automatically will be removed at the end of the run.

There are also browser tests by Puppeteer, which also provide integrity testing.

npm run test:browser

The test HTML file which Puppeteer uses is the test/testpage/testpage.html. In order to open this file and manually test BeeJS via developer console, it's necessary to build the test JS file that it imports with npm run compile:window. This test JS file is identical with the Bee library itself, except it binds BeeJS functionalities to the browser's window object.

Compile code

In order to compile NodeJS code run

npm run compile:node

or for Browsers

npm run compile:browser

License

BSD-3-Clause

bee-js's People

Contributors

agazso avatar bee-worker avatar dependabot[bot] avatar nugaon avatar vandot avatar vojtechsimetka avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.