This is a monorepo containing the Oyl SDK packages. The SDK provides tools for interacting with various Bitcoin protocols including BRC-20, Runes, and Alkanes.
@oyl/sdk-core- Core functionality including account management and provider interfaces@oyl/sdk-alkanes- Alkanes protocol implementation@oyl/sdk-brc20- BRC-20 protocol implementation@oyl/sdk-btc- BTC implementation@oyl/sdk-runes- Runes protocol implementation
- Node.js >= 20.0.0
- pnpm >= 8.15.0
# Install dependencies
pnpm install
# Build all packages
pnpm build
# Build a specific package
pnpm --filter @oyl/sdk-core buildRun tests in watch mode
pnpm test --watchRun a specific test:
pnpm test -- src/utxo/utxo.test.tsTo install and set up the library, run:
$ git clone https://github.com/oyl-wallet/oyl-sdk.git
$ cd oyl-sdk
$ pnpm installIf you want to use specific packages from this monorepo in your project, you can install them directly from GitHub. Add the following to your project's package.json:
{
"dependencies": {
"@oyl/sdk-core": "github:Oyl-Wallet/oyl-sdk-mono#main:packages/core",
"@oyl/sdk-brc20": "github:Oyl-Wallet/oyl-sdk-mono#main:packages/brc20"
}
}Note:
- Replace
mainwith your desired branch name (e.g.,develop) - The
:packages/coresyntax is important for monorepo packages - Make sure to run
npm installor your preferred package manager's install command after adding these dependencies
To use the CLI globally with pnpm:
- First, ensure pnpm is set up for global installations:
# Set up pnpm global bin directory
pnpm setup
# Add pnpm global bin to your PATH (add this to your ~/.bashrc or ~/.zshrc)
export PATH="$HOME/.local/share/pnpm:$PATH"- Install the CLI globally:
# Navigate to the CLI package
cd packages/cli
# Install globally
pnpm install -g .- Verify the installation:
oyl-mono --helpIf you encounter any issues with the global installation, you can also run the CLI directly:
node packages/cli/dist/index.js --help- Node.js >= 20
- pnpm
$ pnpm test --filter @oyl/sdk-coreFull documentation is available at https://alkanes.build/
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature - Add your changes:
git add . - Commit your changes:
git commit -m 'Add some feature' - Push to the branch:
git push origin my-new-feature - Submit a pull request 😎
We use SemVer for versioning. For the versions available, see the tags on this repository.
From root of oyl-sdk repo:
$ npm publish --access public- Oyl Dynamics
See also the list of contributors who participated in this project.