The Token JavaScript library comprises:
- A library to interact with the on-chain program
- A test client that exercises the program
- Scripts to facilitate building the program
First, make sure you've already deployed the associated-token-account program by going into associated-token-account/program
and running:
$ cargo build-bpf
Once that's complete, come back to the token/program/js
folder and install the npm dependencies, including @solana/web3.js
, by running:
$ npm install
The client connects to a local Solana cluster by default.
To enable on-chain program logs, set the RUST_LOG
environment variable:
$ export RUST_LOG=solana_runtime::native_loader=trace,solana_runtime::system_instruction_processor=trace,solana_runtime::bank=debug,solana_bpf_loader=debug,solana_rbpf=debug
To start a local Solana cluster run:
$ solana-test-validator
Solana cluster logs are available with:
$ solana --url http://127.0.0.1:8899/ logs
$ npm run build:program
$ npm run start
Solana maintains three public clusters:
devnet
- Development cluster with airdrops enabledtestnet
- Tour De Sol test cluster without airdrops enabledmainnet-beta
- Main cluster
Use npm scripts to configure which cluster.
To point to devnet
:
$ npm run cluster:devnet
To point back to the local cluster:
$ npm run cluster:localnet
- (first-time only) Create your account on npmjs.com (with 2FA enabled!) and ask @mvines about granting the publish right and run
npm login
- Bump version in
package.json
andnpm install
(to updatepackage-lock.json
) - Create a PR for the version bump
- Merge the PR and push new git tag on master branch
- Create release on github.com from the pushed tag
- Run
npm run build
andnpm publish