Skip to content
Promise and RxJS APIs around Polkadot and any Substrate-based chain RPC calls. It is dynamically generated based on what the Substrate runtime provides in terms of metadata. Full documentation & examples available
Branch: master
Clone or download
Travis CI
Latest commit 31f81ca Jul 17, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs [CI Skip] 0.82.0-beta.70 Jul 17, 2019
packages [CI Skip] 0.82.0-beta.70 Jul 17, 2019
.123trigger multi-merge failure May 23, 2019
.codeclimate.yml Additional Codeclimate cleanups (#452) Dec 9, 2018
.editorconfig Initial add Nov 18, 2017
.eslintignore eslint rules (#1099) Jul 14, 2019
.eslintrc.js eslint rules (#1099) Jul 14, 2019
.gitignore rm -rf cc-test-reporter Apr 29, 2019
.npmignore Move to lerna repo (#19) Nov 28, 2017
.nvmrc Add documentation and examples (#145) Sep 15, 2018
.travis.yml Bump deps (#861) Apr 29, 2019 Pull parameter_types! from metadata (#1066) Jul 9, 2019 Deploy docs via gh-pages (#746) Feb 28, 2019
LICENSE Update LICENSE and README (#408) Nov 21, 2018 Pull parameter_types! from metadata (#1066) Jul 9, 2019
babel.config.js Use @babel 7 (#90) May 16, 2018
docker-compose.yml Reorganize test setup (#1132) Jul 16, 2019
jest.config.js eslint rules (#1099) Jul 14, 2019
lerna.json [CI Skip] 0.82.0-beta.70 Jul 17, 2019
package.json [CI Skip] 0.82.0-beta.70 Jul 17, 2019
tsconfig.json Pull parameter_types! from metadata (#1066) Jul 9, 2019
typedoc.js Pull in vuepress foir docs (as opposed to gitbook) (#742) Feb 26, 2019
yarn.lock Update to latest metadata for 2.x (#1142) Jul 17, 2019

polkadotjs license style npm travis maintainability coverage greenkeeper


This library provides a clean wrapper around all the methods exposed by a Polkadot/Subtrate network client and defines all the types exposed by a node. For complete documentation around the classes, interfaces and their use, visit the documentation portal.


Looking for tutorials to get started? Look at examples for guides on how to use the API to make queries and submit transactions.


The API is split up into a number of internal packages -

  • @polkadot/api The API library, providing both Promise and RxJS Observable-based interfaces. This is the main user-facing entry point.
  • @polkadot/api-derive Derived results that are injected into the API, allowing for combinations of various query results (only used internally and exposed on the Api instances via api.derive.*)
  • @polkadot/api-metadata Base extrinsic, storage and constant injectors for injection
  • @polkadot/rpc-core Wrapper around all JSON-RPC methods exposed by a Polkadot network client
  • @polkadot/rpc-provider Providers for connecting to nodes, including WebSockets and Http

Type definitions for interfaces as exposed by Polkadot & Substrate clients -


Contributions are welcome!

To start off, this repo (along with others in the @polkadot family) uses yarn workspaces to organise the code. As such, after cloning, its dependencies should be installed via yarn, not via npm; the latter will result in broken dependencies.

To get started -

  1. Clone the repo locally, via git clone <optional local path>
  2. Ensure that you have a recent version of Node.js, for development purposes Node 10 is recommended.
  3. Ensure that you have a recent version of Yarn, for development purposes Yarn >=1.10.1 is required.
  4. Install the dependencies by running yarn
  5. Build the everything via yarn run build
  6. You can also launch the API Docs, via yarn vuepress dev docs
  7. Access the docs via http://localhost:8080
You can’t perform that action at this time.