Stellar Address Kit is a specialized, multi-language library designed to solve the complexity of deposit routing on the Stellar network. It provides a unified, spec-compliant way to handle G-addresses (classic), M-addresses (muxed), and C-addresses (contracts) across TypeScript, Go, and Dart.
For full technical specifications, architecture deep-dives, and API references, visit our Live Documentation.
- Quickstart: Get running in under 60 seconds.
- Routing Logic: Complete reference of all routing scenarios.
- Common Mistakes: Avoid the 6 most common integration pitfalls.
- Language Guides: Specialized guides for Go, TypeScript, and Flutter.
| Platform | Package | Install |
|---|---|---|
| TypeScript | stellar-address-kit |
npm install stellar-address-kit |
| Go | core-go |
go get github.com/Boxkit-Labs/stellar-address-kit/packages/core-go |
| Dart / Flutter | stellar_address_kit |
dart pub add stellar_address_kit |
Extract canonical routing information from any address type (G, M, or C) with zero-throw safety.
import { extractRouting } from "stellar-address-kit";
// Handles M-addresses, G-addresses with memos, and C-addresses
const result = extractRouting({
address:
"MA7QYNF7SOWQ3GLR2BGMZEHXAVIRZA4KVWLT7AV7Y6S33Z6S3CHBAAAAAAAAAAAAABQD",
});
console.log(result.address); // "GA7Q..."
console.log(result.routingId); // "123"- Spec-First Design: Guaranteed identical behavior across all three languages via a shared test vector suite.
- Precision Safety: Built-in protection against 64-bit integer precision loss in JavaScript and Flutter Web.
- Warning System: Discriminated unions (TS) or structured objects (Go/Dart) to catch edge cases like numeric
MEMO_TEXT. - Zero Dependencies: Core logic is lightweight and has zero external dependencies beyond standard library features.
- codeZeus - GitHub
This project is licensed under the MIT License - see the LICENSE file for details.