solana-program-library/token-swap/js
Jon Cinque db42f7abbe
token-swap: Add curve and pool token trait and integrate in processor (#624)
* Add SwapCurve trait and integrate in processor

* Add PoolTokenConverter trait to correspond

* Add curve type parameter to initialization and JS

* Refactor for flat curve test, fmt

* Update token-swap/program/src/curve.rs

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>

* Refactor swap curve to allow for any implementation

* Rename SwapCurveWrapper -> SwapCurve

* Run cargo fmt

* Update CurveType to enum in JS

Co-authored-by: Tyera Eulberg <teulberg@gmail.com>
2020-10-21 20:46:50 +02:00
..
cli token-swap: Add curve and pool token trait and integrate in processor (#624) 2020-10-21 20:46:50 +02:00
client token-swap: Add curve and pool token trait and integrate in processor (#624) 2020-10-21 20:46:50 +02:00
flow-typed Clean up JS test getConnection function (#577) 2020-10-08 09:27:06 +00:00
.eslintignore token-swap js: Prepare package for npm (#475) 2020-09-18 19:10:21 +02:00
.eslintrc.js Relocate js 2020-08-08 15:25:47 -07:00
.flowconfig Relocate js 2020-08-08 15:25:47 -07:00
.prettierrc.yaml Relocate js 2020-08-08 15:25:47 -07:00
README.md token-swap js: Prepare package for npm (#475) 2020-09-18 19:10:21 +02:00
babel.config.json Relocate js 2020-08-08 15:25:47 -07:00
babel.rollup.config.json Token-swap ts, flow bindings and build using rollup. (#463) 2020-09-18 09:31:16 +02:00
cluster-devnet.env Relocate js 2020-08-08 15:25:47 -07:00
cluster-mainnet-beta.env Relocate js 2020-08-08 15:25:47 -07:00
cluster-testnet.env Relocate js 2020-08-08 15:25:47 -07:00
module.d.ts token-swap: Add curve and pool token trait and integrate in processor (#624) 2020-10-21 20:46:50 +02:00
module.flow.js token-swap: Add curve and pool token trait and integrate in processor (#624) 2020-10-21 20:46:50 +02:00
package-lock.json Bump rollup from 2.32.0 to 2.32.1 in /token-swap/js (#682) 2020-10-21 11:54:34 +00:00
package.json Bump @solana/web3.js from 0.81.0 to 0.82.0 in /token-swap/js (#683) 2020-10-21 11:26:19 +00:00
rollup.config.js Token-swap ts, flow bindings and build using rollup. (#463) 2020-09-18 09:31:16 +02:00
url.js Relocate js 2020-08-08 15:25:47 -07:00

README.md

Token-swap JavaScript API

The Token-swap 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

Getting Started

First fetch the npm dependencies, including @solana/web3.js, by running:

$ npm install

Select a Network

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:

$ npm run localnet:update
$ npm run localnet:up

Solana cluster logs are available with:

$ npm run localnet:logs

For more details on working with a local cluster, see the full instructions.

Build the on-chain program

$ npm run build:program

Run the test client

$ npm run start

Pointing to a public Solana cluster

Solana maintains three public clusters:

  • devnet - Development cluster with airdrops enabled
  • testnet - Tour De Sol test cluster without airdrops enabled
  • mainnet-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