2.1.8 • Published 1 month ago

@substrate/connect v2.1.8

Weekly downloads
-
License
GPL-3.0-only
Repository
github
Last release
1 month ago

The primary implementation of the light-client provider for any Substrate-based chain.

Using @substrate/connect for library authors

The connect package searches for a light client provider via the discovery protocol. If none is found, it will initiate a smoldot instance in the user's browser tab.

Example Usage

To connect to a well-known chain ('polkadot', 'ksmcc3', 'westend2', 'rococo_v2_2'):

import { createScClient, WellKnownChain } from "@substrate/connect"

const scClient = createScClient()
const chain = await scClient.addWellKnownChain(
  WellKnownChain.westend2,
  function jsonRpcCallback(response) {
    console.log("response", response)
  },
)

chain.sendJsonRpc(
  '{"jsonrpc":"2.0","id":"1","method":"system_health","params":[]}',
)

To connect to a custom Substrate chain using its name and chainspec:

import { createScClient } from "@substrate/connect"
import myJsonChainSpec from "./mySubstrateChainSpec.json"

const myChainSpec = JSON.stringify(myJsonChainSpec)

const scClient = createScClient()
const chain = await scClient.addChain(
  myChainSpec,
  function jsonRpcCallback(response) {
    console.log("response", response)
  },
)

chain.sendJsonRpc(
  '{"jsonrpc":"2.0","id":"1","method":"system_health","params":[]}',
)

Connecting to a Parachain

To connect to a parachain, first instantiate the relay chain it is connected to, then instantiate the parachain on the same relay chain. The following example connects to a parachain on the Westend test network:

import { createScClient, WellKnownChain } from "@substrate/connect"
import jsonParachainSpec from "./myParaChainSpec.json"

const parachainSpec = JSON.stringify(jsonParachainSpec)

const scClient = createScClient()
const relayChain = await scClient.addWellKnownChain(WellKnownChain.westend2)
const parachain = await relayChain.addChain(
  parachainSpec,
  function jsonRpcCallback(response) {
    console.log("response", response)
  },
)

parachain.sendJsonRpc(
  '{"jsonrpc":"2.0","id":"1","method":"system_health","params":[]}',
)

PolkadotJs Example

yarn add @polkadot/rpc-provider
yarn add @polkadot/api
import { ScProvider } from "@polkadot/rpc-provider/substrate-connect"
import * as Sc from "@substrate/connect"
import { ApiPromise } from "@polkadot/api"

// Connect to polkadot relay chain
const provider = new ScProvider(Sc, Sc.WellKnownChain.polkadot)
await provider.connect()
const api = await ApiPromise.create({ provider })

// Connect to parachain
const provider2 = new ScProvider(Sc, Sc.WellKnownChain.people, provider)
await provider2.connect()
const api2 = await ApiPromise.create({ provider })

Scripts

  • pnpm test to run the unit tests
  • pnpm build to build @substrate-connect
  • pnpm lint to run linter for @substrate-connect
2.1.6

2 months ago

2.1.5

3 months ago

2.1.8

1 month ago

2.1.7

2 months ago

2.1.4

4 months ago

2.1.3

5 months ago

2.0.1

8 months ago

2.1.2

6 months ago

2.1.1

6 months ago

2.1.0

7 months ago

2.0.0

8 months ago

1.3.1

8 months ago

1.3.0

9 months ago

1.2.0

10 months ago

1.2.1

9 months ago

1.1.1

11 months ago

1.1.0

11 months ago

1.1.3

10 months ago

1.1.2

11 months ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago

1.0.9

11 months ago

1.0.8

11 months ago

1.0.7

11 months ago

1.0.6

12 months ago

1.0.5

12 months ago

1.0.4

12 months ago

1.0.3

12 months ago

0.8.11

1 year ago

0.8.10

1 year ago

0.8.9

1 year ago

0.8.8

1 year ago

0.8.7

1 year ago

0.8.6

1 year ago

0.8.5

1 year ago

0.8.4

1 year ago

0.8.3

2 years ago

0.8.2

2 years ago

0.7.33

2 years ago

0.7.32

2 years ago

0.7.35

2 years ago

0.7.34

2 years ago

0.7.31

2 years ago

0.7.30

2 years ago

0.8.1

2 years ago

0.8.0

2 years ago

0.7.29

2 years ago

0.7.28

2 years ago

0.7.27

2 years ago

0.7.26

2 years ago

0.7.25

2 years ago

0.7.22

2 years ago

0.7.21

2 years ago

0.7.24

2 years ago

0.7.23

2 years ago

0.7.20

2 years ago

0.7.19

2 years ago

0.7.18

3 years ago

0.7.15

3 years ago

0.7.17

3 years ago

0.7.16

3 years ago

0.7.13

3 years ago

0.7.12

3 years ago

0.7.14

3 years ago

0.7.11

3 years ago

0.7.10

3 years ago

0.7.9

3 years ago

0.7.6

3 years ago

0.7.8

3 years ago

0.7.7

3 years ago

0.7.4

3 years ago

0.7.5

3 years ago

0.7.2

3 years ago

0.7.3

3 years ago

0.7.0

3 years ago

0.7.0-alpha.0

3 years ago

0.6.3

3 years ago

0.6.5

3 years ago

0.6.4

3 years ago

0.6.2

3 years ago

0.6.1

3 years ago

0.6.0

3 years ago

0.5.0

3 years ago

0.4.7

4 years ago

0.4.5

4 years ago

0.4.4

4 years ago

0.4.6

4 years ago

0.4.3

4 years ago

0.3.19

4 years ago

0.4.1

4 years ago

0.4.0

4 years ago

0.4.2

4 years ago

0.3.18

4 years ago

0.3.16

4 years ago

0.3.15

4 years ago

0.3.14

4 years ago

0.3.13

4 years ago

0.3.12

4 years ago

0.3.11

4 years ago

0.3.10

4 years ago

0.3.9

4 years ago

0.3.8

4 years ago

0.3.7

4 years ago

0.3.1-test3

4 years ago

0.3.1-test4

4 years ago

0.3.1-test2

4 years ago

0.3.1-test

4 years ago

0.3.6-test1

4 years ago

0.3.6

4 years ago

0.3.5

4 years ago

0.3.4

4 years ago

0.3.3

4 years ago

0.3.2

4 years ago

0.3.0

4 years ago

0.2.0

4 years ago

0.1.0

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago