cardano-js-sdk
cardano-js-sdk copied to clipboard
JavaScript SDK for interacting with Cardano, providing various key management options, with support for popular hardware wallets
Cardano JS SDK
Overview
A suite of TypeScript packages suitable for both Node.js and browser-based development.
- @cardano-sdk/core
- @cardano-sdk/crypto
- @cardano-sdk/input-selection
- @cardano-sdk/dapp-connector
- @cardano-sdk/governance
- @cardano-sdk/key-management
- @cardano-sdk/web-extension
- @cardano-sdk/wallet
- @cardano-sdk/projection
- @cardano-sdk/util-rxjs
- @cardano-sdk/util
- @cardano-sdk/util-dev
- @cardano-sdk/cardano-services
- @cardano-sdk/cardano-services-client
Supported Environments
Packages are distributed as both CommonJS and ESM modules.
- Node.js >=16.20.2
- using with
type="module"
requires--experimental-specifier-resolution=node
flag
- using with
- Browser via bundlers (see example webpack config)
Getting Started
The GETTING_STARTED guide provides a quick way to start experimenting.
Testing
- @cardano-sdk/golden-test-generator
Deployments
Automatic deployments are done for:
- dev-preview - On each push to master
- dev-preprod - On each release
- dev-mainnet - On each release
Manual deployments can be done via STD Workflow
- Click 'Run workflow'
- Select branch
- Check checkboxes for environments that should be deployed
- Click 'Run workflow'
Development
A Yarn Workspace maintaining a single version across all packages.
System Requirements
- nvm
- yarn
- Node.js 16 or later
- Docker Desktop 3.4 or later or a Docker installation that includes Compose V2
Clone
git clone \
https://github.com/input-output-hk/cardano-js-sdk.git \
&& cd cardano-js-sdk
Install and Build
nvm install && \
nvm use && \
DETECT_CHROMEDRIVER_VERSION=true yarn global add chromedriver && \
yarn install && \
yarn build
The web extension e2e tests uses chromedriver. chromedriver
and your Chrome browser versions should match, if they don’t the driver will error. If you have issues, try running yarn workspace @cardano-sdk/e2e remove chromedriver && yarn workspace @cardano-sdk/e2e add chromedriver
to reinstall the latest version.
Run Tests
yarn test
or
yarn test:debug
Lint
yarn lint
yarn lint --fix
Cleanup
yarn cleanup
Update Cardano configuration subrepo
With yarn
Requires git-subrepo to be installed.
yarn config:update
With nix
Requires Nix, will install git-subrepo
for you.
nix run .#config-update
Attic
Previously supported features, no longer supported, but packed with a reference branch.
Distribute
Pack
./scripts/pack.sh
Publish to npm.org
./scripts/publish.sh
Generate Docs
yarn docs
Possible issues
-
yarn build --mode=skip-build
in Docker image