Files
solana/web3.js
mergify[bot] 6e214bbc04 Docs fixups (bp #15801) (#15802)
* docs: add docs links for crates published to crates.io

(cherry picked from commit 24d18b3cf2)

# Conflicts:
#	core/Cargo.toml
#	measure/Cargo.toml
#	programs/bpf/rust/finalize/Cargo.toml

* docs: add rust client api entry

(cherry picked from commit 3e6c7c4a3e)

* docs: rename 'deployed programs' section to 'on-chain programs'

(cherry picked from commit 0e452c8d91)

* docs: 'builtins' -> 'runtime facilities'

(cherry picked from commit 9c8be34906)

* docs: stabilize spl token jsonrpc methods

(cherry picked from commit 45190f6281)

* docs: deprecate lastvalidslot field of jsonrpc getfees

(cherry picked from commit c4ee1ab710)

Co-authored-by: Trent Nelson <trent@solana.com>
2021-03-11 21:49:14 +00:00
..
2021-03-11 21:49:14 +00:00
2021-01-26 17:01:41 -08:00

Build status codecov esdoc
npm npm-downloads
semantic-release code-style-prettier

Solana JavaScript API

This is the Solana Javascript API built on the Solana JSON RPC API

Latest API Documentation

Installation

Yarn

$ yarn add @solana/web3.js

npm

$ npm install --save @solana/web3.js

Browser bundle

<script src="https://github.com/solana-labs/solana-web3.js/releases/download/v0.0.6/solanaWeb3.min.js"></script>

BPF program development

The Solana BPF SDK is located in the bpf-sdk/ subdirectory if you installed solana-web3.js from npmjs.com.

From a git clone, run npm run bpf-sdk:install to fetch the latest BPF SDK.

Additionally Rust must be installed to build Rust BPF programs such as examples/bpf-rust-noop/. See https://www.rust-lang.org/install.html for installation details.

Usage

Javascript

const solanaWeb3 = require('@solana/web3.js');
console.log(solanaWeb3);

ES6

import solanaWeb3 from '@solana/web3.js';
console.log(solanaWeb3);

Browser bundle

// `solanaWeb3` is provided in the global namespace by the `solanaWeb3.min.js` script bundle.
console.log(solanaWeb3);

Local Network

The solana-localnet program is provided to easily start a test Solana cluster locally on your machine. Docker must be installed. The JSON RPC endpoint of the local cluster is http://localhost:8899.

To start, first fetch the latest Docker image by running:

$ npx solana-localnet update

Then run the following command to start the cluster

$ npx solana-localnet up

While the cluster is running logs are available with:

$ npx solana-localnet logs -f

Stop the cluster with:

$ npx solana-localnet down

Flow

A Flow library definition is provided at module.flow.js. Add the following line under the [libs] section of your project's .flowconfig to activate it:

[libs]
node_modules/@solana/web3.js/module.flow.js

Examples

See the examples/ directory for small snippets.

Standalone examples:

Releases

Releases are available on Github and npmjs.com

Each Github release features a tarball containing API documentation and a minified version of the module suitable for direct use in a browser environment (<script> tag)