arkd is currently in alpha stage. It has undergone limited mainnet testing and should be considered experimental.
The content in this tab is specifically aimed at you, if you are..
  1. …an SDK/Library developer
  2. ..a developer wanting to build, but an SDK in your favorite language doesn’t exist yet
  3. ..an avid learner wanting to grok arkd API
arkd is the backbone of an Arkade instance, built on top of the Ark protocol. It facilitates offchain transaction execution, coordinates onchain settlement and manages VTXOs through the Intent System. This section outlines how to integrate with Arkade via arkd and its APIs. Main API Layer Services The arkd server is an always-on server and exposes two public gRPC services for Arkade clients:
  • ArkService - Handles batch processing, intent registration, and multi-party signing
  • IndexerService - Provides data queries for VTXOs, transaction history, and real-time subscriptions
To understand how client applications actually interact with arkd, see the API Layer Overview. Core Architecture arkd consists of two main executable processes:
  • arkd - The primary server process that hosts all core services, manages the Virtual Mempool and the coordination for onchain settlements
  • arkd-wallet - A separate wallet service process that provides Bitcoin wallet functionality and liquidity
arkd supports multiple Bitcoin networks including regtest, testnet3, signet, mutinynet, and has undergone mainnet testing.

Design Principles

The codebase follows a layered architecture with clear separation of concerns:

Get Started