JavaScript/TypeScript SDK for interacting with the Allfeat blockchain.
This monorepo provides essential tooling to interface with the Allfeat networks ecosystem.
A high-level wrapper around dedot, preconfigured for Allfeat networks. It simplifies connection setup and interaction with Allfeat-specific runtime modules.
import { MelodieClient, AllfeatProvider } from '@allfeat/client'
const provider = new AllfeatProvider('melodie') // or 'local' | 'custom-url'
const client = await MelodieClient.new(provider)
// Query free balance
const { data: balance } = await client.query.system.account('your-address-here')
console.log(`Free balance: ${balance.free.toString()}`)Core MIDDS (Music Industry Decentralized Data Structure) definitions and utilities. This package contains types, validation logic, chain encoding helpers and client interfaces for working with musical metadata on Allfeat.
TypeScript bindings for the Allfeat runtime, auto-generated via dedot.
These types are used internally by the client but can be imported for advanced usage or custom tooling.
import type { AllfeatMelodieApi } from '@allfeat/chaintypes'
type BalanceCall = AllfeatMelodieApi['tx']['balances']['transferKeepAlive']pnpm install @allfeat/sdkThe SDK supports predefined networks or custom WebSocket endpoints:
melodie— Main testnet (wss://melodie-rpc.allfeat.io)local— Local development node (ws://127.0.0.1:9944)custom— Any valid WebSocket URL (e.g.ws://your-node:9944)
Example with custom URL:
const provider = new AllfeatProvider('ws://your-node:9944')Usage examples are available in the examples/ directory for real-world integration and testing scenarios.
To build and lint/format all packages:
pnpm install
pnpm build
pnpm format && pnpm lint