Author
Molly Karcher
Publishing date
We’re consolidating our Golang developer tools - including the Horizon and RPC clients, Ingest SDK, and key utilities - into a single, unified Go SDK for Stellar. This change simplifies the developer experience, improves discoverability, and aligns the Go ecosystem with the structure of other Stellar SDKs.
For years, developers building on Stellar in Go have worked within a single, sprawling monorepo. That repository housed nearly everything, but it wasn’t always clear where the boundaries were.
In practice, this meant developers often had to:
This structure blurred important lines: it wasn’t obvious which Go packages were part of the Composable Data Platform paradigm (and therefore designed for reuse) versus which were tightly coupled to Horizon or other services. That lack of clarity made it harder for the community to adopt or extend our data tooling, even though much of it was built with reuse in mind.
Meanwhile, developers in other languages enjoyed a simpler, clearer setup. Most Stellar SDKs (JavaScript, Python, Java, etc.) already co-locate their Horizon and RPC clients in a single, well-scoped repository, with explicit entry points and documentation.
The new Go SDK fixes this. It means only reusable developer-facing packages stay in the monorepo, making it clear what’s part of Stellar’s official SDK surface. It’s about discoverability, maintainability, and giving Go developers the same cohesive experience enjoyed elsewhere in the Stellar ecosystem.
The Go repo - previously stellar/go - will be renamed to stellar/go-stellar-sdk to align with the naming conventions adopted by most other Stellar SDKs and make its intent clearer to end-users. This means that any developers currently using any of the below clients, libraries, or utilities will need to rename all package import statements from github.com/stellar/go/* to github.com/stellar/go-stellar-sdk/*.
The new Go Stellar SDK contains:
At the same time, several structural changes are being made to simplify the Go ecosystem and clarify ownership:
This reorganization isn’t just a cleanup, it’s a step toward a clearer, more unified developer experience across the Stellar ecosystem. With this new SDK structure, we can:
If you’re a Go developer currently using Horizon, RPC, the Ingest SDK, or any other Golang utilities maintained by SDK, we’d love your feedback (or contributions!) as we continue shaping this unified SDF experience. Share your thoughts in our Developer Discord or participate in the Github Discussion.