Git Product home page Git Product logo

skynet-js's Introduction

skynet-js - Javascript Sia Skynet Client

Version Build Status Contributors License

A Javascript module made to simplify communication with Sia Skynet portals from the browser.

Documentation

For documentation complete with examples, please see the Skynet SDK docs.

We also have an example tutorial about creating your first web app on Skynet

How To Use skynet-js In Your Project

If you're thinking, "wait, how can I import() in the browser," then here is the answer:

While skynet-js is built with Node.js, you can easily compile it to one minified javascript file that is compatible with browsers.

Webpack will compile only the used functions (unused code will be removed automatically), so it is recommended to build your whole project in Node.js and compile it with webpack (click here for detailed tutorial):

cd your_project

npm install skynet-js

npm install webpack webpack-cli --save-dev

Update your package.json file.

remove - "main": "index.js",
add    - "private": true,

Create folders mkdir dist src. Make sure you have your javascript files in src and the main (entry) javascript is named index.js.

Compile with npx webpack! You will find the minified main.js in the dist folder.

Browser Utility Functions

skynet-js provides functions that only make sense in the browser, and are covered in the special section Browser JS API.

Development

  1. Clone the repository
  2. Run yarn
  3. Run yarn test to run the tests

Requirements

We have some automated checks that must pass in order for code to be accepted. These include:

  • Type-checking and other code lints must pass.
  • Every function must have a complete JSDoc-style docstring.
  • 100% code coverage is enforced. Every statement and conditional branch must be tested.

Note that the 100% coverage requirement is a minimum. Just because a line of code is tested does not mean it is tested well, that is, with different values and combinations of values. Tests should be as thorough as possible, within reason.

skynet-js's People

Contributors

mrcnski avatar dependabot[bot] avatar kwypchlo avatar dependabot-preview[bot] avatar peterjan avatar dghelm avatar dawe35 avatar ro-tex avatar

Watchers

 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.