solana/web3.js
dependabot[bot] 8e6441c1f6
chore: bump @types/node from 14.14.29 to 14.14.30 in /web3.js (#15432)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.14.29 to 14.14.30.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-02-19 09:21:18 +00:00
..
.github Add warning to PR template for mirrored repos (#13344) 2020-11-02 14:34:14 +08:00
.travis chore: replace jest with mocha 2021-02-08 07:57:05 +08:00
bin docs: bump nofiles recommendations to match maps 2021-02-02 21:59:21 -07:00
css code highlight style change 2020-06-14 21:57:04 -07:00
examples chore: port web3.js to solana-test-validator 2020-12-17 20:53:10 +00:00
flow-typed/npm chore: cleanup flow and package.json 2021-02-08 07:57:05 +08:00
src feat: update commitment variants (#15253) 2021-02-17 16:15:09 -08:00
test feat: update commitment variants (#15253) 2021-02-17 16:15:09 -08:00
.esdoc.json
.eslintignore chore: replace jest with mocha 2021-02-08 07:57:05 +08:00
.eslintrc.js chore: cleanup flow and package.json 2021-02-08 07:57:05 +08:00
.flowconfig chore: fix flow config 2020-06-18 15:39:02 +08:00
.gitignore chore: cleanup flow and package.json 2021-02-08 07:57:05 +08:00
.mergify.yml
.mocharc.js chore: replace jest with mocha 2021-02-08 07:57:05 +08:00
.prettierignore chore: replace jest with mocha 2021-02-08 07:57:05 +08:00
.prettierrc.yaml
.sgcrc
.travis.yml chore: port web3.js to solana-test-validator 2020-12-17 20:53:10 +00:00
CONTRIBUTING.md chore: replace jest with mocha 2021-02-08 07:57:05 +08:00
LICENSE
README.md fix: update browser bundle link (#15386) 2021-02-18 11:34:57 +08:00
babel.config.json chore: replace jest with mocha 2021-02-08 07:57:05 +08:00
commitlint.config.js
mocha.html chore: replace jest with mocha 2021-02-08 07:57:05 +08:00
module.d.ts feat: update commitment variants (#15253) 2021-02-17 16:15:09 -08:00
module.flow.js feat: update commitment variants (#15253) 2021-02-17 16:15:09 -08:00
package-lock.json chore: bump @types/node from 14.14.29 to 14.14.30 in /web3.js (#15432) 2021-02-19 09:21:18 +00:00
package.json fix: fix browser module resolution for parcel (#15426) 2021-02-19 15:23:45 +08:00
rollup.config.js chore: replace jest with mocha 2021-02-08 07:57:05 +08:00

README.md

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

<!-- Development (un-minified) -->
<script src="https://unpkg.com/@solana/[email protected]/lib/index.iife.js"></script>

<!-- Production (un-minified) -->
<script src="https://unpkg.com/@solana/[email protected]/lib/index.iife.min.js"></script>

Development Environment Setup

To build and run tests:

  1. Install Rust from https://rustup.rs/
  2. Install the latest Solana release from https://docs.solana.com/cli/install-solana-cli-tools

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);

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)

Deprecated

Local Network

Please use solana-test-validator from the latest Solana release instead of the information in this section

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

BPF program development

Please use cargo build-bpf from the latest Solana release instead of the information in this section

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.