ripple-lib (RippleAPI)
A JavaScript/TypeScript API for interacting with the XRP Ledger
This is the recommended library for integrating a JavaScript/TypeScript app with the XRP Ledger, especially if you intend to use advanced functionality such as IOUs, payment paths, the decentralized exchange, account settings, payment channels, escrows, multi-signing, and more.
➡️ Reference Documentation
See the full reference documentation on the XRP Ledger Dev Portal.
➡️ Applications and Projects
What is ripple-lib used for? The applications on the list linked above use ripple-lib
. Open a PR to add your app or project to the list!
Features
- Connect to a
rippled
server from Node.js or a web browser - Helpers for creating requests and parsing responses for the rippled API
- Listen to events on the XRP Ledger (transactions, ledger, validations, etc.)
- Sign and submit transactions to the XRP Ledger
- Type definitions for TypeScript
Requirements
- Node.js v14 is recommended. Other versions may work but are not frequently tested.
- Yarn is recommended.
npm
may work but we useyarn.lock
.
Getting Started
See also: RippleAPI Beginners Guide
In an existing project (with package.json
), install ripple-lib
:
$ yarn add ripple-lib
Then see the documentation:
Documentation
Mailing Lists
We have a low-traffic mailing list for announcements of new ripple-lib releases. (About 1 email per week)
If you're using the XRP Ledger in production, you should run a rippled server and subscribe to the ripple-server mailing list as well.
Development
To build the library for Node.js and the browser:
$ yarn build
The TypeScript compiler will output the resulting JS files in ./dist/npm/
.
webpack will output the resulting JS files in ./build/
.
For details, see the scripts
in package.json
.
Running Tests
Unit Tests
- Clone the repository
cd
into the repository and install dependencies withyarn install
yarn test
Linting
Run yarn lint
to lint the code with eslint
.
Generating Documentation
Do not edit ./docs/index.md
directly because it is a generated file.
Instead, edit the appropriate .md.ejs
files in ./docs/src/
.
If you make changes to the JSON schemas, fixtures, or documentation sources, update the documentation by running yarn run docgen
.
More Information
- ripple-lib-announce mailing list - subscribe for release announcements
- RippleAPI Reference - XRP Ledger Dev Portal
- XRP Ledger Dev Portal