A unified REST API for interacting with multiple blockchains. Adamik API provides a single interface to read balances, build transactions, encode/sign payloads, and broadcast across 65+ chains and 10 blockchain families.
| Family | Chains |
|---|---|
| EVM | Ethereum, Base, Optimism, Arbitrum, Polygon, zkSync, BSC, Linea, Avalanche, Gnosis, Moonbeam, Moonriver, Fantom, Mantle, Rootstock, Chiliz, Hyperliquid + testnets |
| Cosmos | Cosmos Hub, Osmosis, Celestia, dYdX, Injective, Akash, Band, Stargaze, Kujira, Sei, Saga, Coreum + testnets |
| Bitcoin | Bitcoin, Litecoin, Dogecoin + testnets |
| Solana | Solana, Solana Devnet |
| TON | TON |
| Tron | Tron, Tron Shasta |
| Starknet | Starknet, Starknet Sepolia |
| Stellar | Stellar, Stellar Testnet |
| Algorand | Algorand |
| Aptos | Aptos |
For a full list of chains and their providers, see doc/Providers.md.
pnpm installCopy the example environment file and fill in the values you need:
cp .env.example .env.localAll provider API keys are optional — only configure the chains you plan to use. See .env.example for documentation on each variable.
# Development server (with hot reload)
pnpm dev
# Production build
pnpm build
pnpm startThe API will be available at http://localhost:3000.
# Run unit tests
pnpm test:jest
# Run Bruno integration tests (against local server, started with env var TEST_ENV=true)
pnpm test:bruno:localTests use Mock Service Worker (MSW) to record and replay provider HTTP responses, so they can run without real API keys.
# Generate OpenAPI spec
pnpm doc:openapi
# Regenerate providers documentation
pnpm doc:providers
# Regenerate chains documentation
pnpm doc:chainsWe welcome contributions! Please see CONTRIBUTING.md for guidelines.
If you discover a security vulnerability, please follow our security policy. Do not open a public issue.
This project is licensed under the Apache License 2.0. See the NOTICE file for additional attribution information.