/stacks.js

JavaScript libraries for identity, auth, storage and transactions on the Stacks blockchain.

Primary LanguageTypeScriptMIT LicenseMIT

Stacks.js CircleCI

This repo is home to the Stacks.js libraries which provide everything you need to work with the Stacks blockchain.

See README in each package directory for installation instructions and usage.

Migrating from blockstack.js

To migrate your app from blockstack.js to stacks.js follow the steps in the migration guide.

Development: environment setup

To setup the development environment for this repository, follow these steps:

  1. Clone this package.
  2. Run npm install to install dependencies
  3. Run npm run bootstrap to bootstrap project
  4. Run npm run build to build packages
  5. Run npm run test to run tests

Development: adding dependencies

This repo uses Lerna hoisting for package dependencies.

In order to install a new dependency to a package, the lerna add command must be used, rather than npm install <package>.

For example, the following command installs lodash as a dependency to the @stacks/storage package:

# Run within the root directory
npm run lerna -- add lodash --scope @stacks/storage

Add --dev to install as a development dependency:

npm run lerna -- add lodash --scope @stacks/storage --dev

Documentation

Documentation for the Stacks.js packages is located here.

Contributing

Github issues marked help-wanted are great places to start. Please ask in a github issue or discord before embarking on larger issues that aren't labeled as help wanted or adding additional functionality so that we can make sure your contribution can be included!