Skip to content

A collection of JavaScript libraries for dapp development.

License

Notifications You must be signed in to change notification settings

openvapory/js-libs

Repository files navigation

Build Status Coverage Status Gitter: Parity.js Riot: +Parity




Tetsy's JavaScript Stack

A collection of JavaScript libraries for dapp development.




Packages

This repository is a monorepo that we manage using Lerna. That means that we publish several packages to npm from the same codebase. If you are a dapp developer, we recommend you start with the following three high-level packages:

Package Version Docs Description
@parity/light.js npm (scoped) docs A high-level reactive library optimized for light clients.
@parity/light.js-react npm (scoped) README Easily integrate @parity/light.js with React.
@parity/api npm (scoped) Coming soon... Promise-based JSONRPC method wrapper, similar to web3.js.

And below are the lower-level packages, used internally, or by advanced users.

Package Version Docs Description
@parity/abi npm (scoped) docs Ethereum ABI encoder and decoder.
@parity/contracts npm (scoped) README Parity's contracts as ES6 classes.
@parity/electron npm (scoped) README Control the Parity Ethereum node from Electron.

Contributing

Dependencies

Install at least yarn version 1.4.2 and Node.js >=10.10.0

yarn --version // Should be at least 1.4.2

Tests

yarn test

Build

yarn build

Maintenance

  1. Fork the repo

  2. Clone your fork

git clone https://github.com/<INSERT_YOUR_GITHUB_USERNAME>/js-libs
  1. Check outdated dependencies
yarn outdated
  1. Create a branch
git checkout -b <INSERT_YOUR_BRANCH_NAME>
  1. Run tests, type checking, linting, and build
yarn test; yarn typecheck; yarn lint; yarn build
  1. Push the branch to your fork of the repo

  2. Integrate the updated library as a dependency. Example: If you want to test a branch of one of the js-lib packages in another project like Fether temporarily, then build js-libs and replace the /lib directory where it's a dependency on the Fether project. Then run Fether to use it:

~/paritytech/js-libs [my-branch-name] $ yarn build
~/paritytech/js-libs [my-branch-name] $ cp -r packages/my-package/lib ../fether/node_modules/@parity/my-package/lib
~/paritytech/js-libs [my-branch-name] $ cd ../fether
~/paritytech/fether [master] $ yarn start
  1. Create a pull request from your fork of the repo to the upstream master branch

License

All Parity's JavaScript libraries are open-source software licensed as MIT.