This repo is home to the Stacks.js libraries which provide everything you need to work with the Stacks blockchain.
@stacks/authConstruct and decode authentication requests for Stacks apps.
@stacks/storageStore and fetch files with Gaia, the decentralized storage system.
@stacks/transactionsConstruct, decode transactions and work with Clarity smart contracts on the Stacks blockchain.
@stacks/cliCommand line interface to interact with auth, storage and Stacks transactions.
@stacks/stackingLibrary for PoX stacking.
@stacks/keychainCreate and manage keys/wallets for the Stacks blockchain.
@stacks/networkNetwork and API library for working with Stacks blockchain nodes.
@stacks/encryptionEncryption functions used by Stacks.js packages.
@stacks/profileFunctions for manipulating user profiles.
@stacks/commonCommon utilities used by Stacks.js packages.
@stacks/bnsLibrary for interacting with the BNS contract.
README in each package directory for installation instructions and usage.
To migrate your app from blockstack.js to stacks.js follow the steps in the migration guide.
To setup the development environment for this repository, follow these steps:
npm installto install dependencies
npm run bootstrapto bootstrap project
npm run buildto build packages
npm run testto run tests
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
# Run within the root directory npm run lerna -- add lodash --scope @stacks/storage
--dev to install as a development dependency:
npm run lerna -- add lodash --scope @stacks/storage --dev
Documentation for the Stacks.js packages is located here.
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!
Generated using TypeDoc