The xrpl-go library provides a Go implementation for interacting with the XRP Ledger. From serialization to signing transactions, the library allows users to work with the most
complex elements of the XRP Ledger. A full library of models for all transactions and core server rippled API objects are provided.
Requiring Go version 1.22.0 and later.
Download latest Go version
| Name | Description |
|---|---|
| addresscodec | Provides functions for encoding and decoding XRP Ledger addresses |
| binarycodec | Implements binary serialization and deserialization of XRP Ledger objects |
| keypairs | Handles generation and management of cryptographic key pairs for XRP Ledger accounts |
| xrpl | Core package containing the main functionality for interacting with the XRP Ledger |
| examples | Contains example code demonstrating usage of the xrpl-go library |
This guide covers everything you need to start contributing to XRPL-GO.
To work on this project, you'll need:
- Go compiler version
1.22.0or later (download or use gvm) - golangci-lint (see
GOLANGCI_LINT_VERSIONinMakefile) - make command-line tool
- Docker (for running CI/CD workflows locally)
- yarn (for running the documentation site)
A Go debugger is also recommended for improved debugging experience.
-
Fork the repository
Fork XRPLF/xrpl-go to your GitHub account to work on changes and open pull requests.
-
Install dependencies
Install dependencies globally:
go mod tidy
Or install them locally in a
vendordirectory:go mod vendor
-
Run the linter
make lint
Note: If
golangci-lintis not installed, this command will automatically install it with the same version used in CI/CD workflows. -
Run tests
Run the full test suite as executed in CI/CD:
make test-ci
Verify that all tests pass. Check the
Makefilefor additional rules and feel free to propose new ones.
If you find any issues, please report them to the XRPL-GO GitHub repository.
The xrpl-go library is licensed under the MIT License.