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
- @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
- @polkadot/rpc-rx A RxJs Observable wrapper around @polkadot/rpc-provider
Type definitions for interfaces as exposed by Polkadot & Substrate clients -
- @polkadot/extrinsics Base extrinsic definitions & codecs
- @polkadot/jsonrpc Definitions for JSONRPC endpoints
- @polkadot/storage Definitions for storage entries
- @polkadot/types Codecs for all Polkadot primitives
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 -
- Clone the repo locally, via
git clone https://github.com/polkadot-js/api <optional local path>
- Ensure that you have a recent version of Node.js, for development purposes Node 10 is recommended.
- Ensure that you have a recent version of Yarn, for development purposes Yarn >=1.10.1 is required.
- Install the dependencies by running
- Build the API Docs, via
yarn run build
- Ready! Now you can launch the API Docs, via
yarn gitbook serve
- Access the API Docs via http://localhost:4000