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 |
A high-level reactive library optimized for light clients. | ||
@parity/light.js-react |
Easily integrate @parity/light.js with React. |
||
@parity/api |
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 |
Ethereum ABI encoder and decoder. | ||
@parity/contracts |
Parity's contracts as ES6 classes. | ||
@parity/electron |
Control the Parity Ethereum node from Electron. |
Install at least yarn version 1.4.2 and Node.js >=10.10.0
yarn --version // Should be at least 1.4.2
yarn test
yarn build
-
Fork the repo
-
Clone your fork
git clone https://github.com/<INSERT_YOUR_GITHUB_USERNAME>/js-libs
- Check outdated dependencies
yarn outdated
- Create a branch
git checkout -b <INSERT_YOUR_BRANCH_NAME>
- Run tests, linting, and build
yarn test; yarn lint; yarn build
-
Push the branch to your fork of the repo
-
Integrate the updated library as a dependency. Example: If you are using the 'electron' package in another project, then update the package.json file to temporarily use your branch instead of the public NPM registry version
yarn add https://github.com/<INSERT_YOUR_GITHUB_USERNAME>/js-libs.git#<INSERT_YOUR_BRANCH_NAME>
- Create a pull request from your fork of the repo to the upstream master branch
All Parity's JavaScript libraries are open-source software licensed as MIT.