Git Product home page Git Product logo

xrpl.js's Introduction

xrpl.js

A JavaScript/TypeScript library for interacting with the XRP Ledger

NPM npm bundle size

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.

See the full reference documentation for all classes, methods, and utilities.

Features

  1. Managing keys & creating test credentials (Wallet && Client.fundWallet())
  2. Submitting transactions to the XRP Ledger (Client.submit(...) & transaction types)
  3. Sending requests to observe the ledger (Client.request(...) using public API methods)
  4. Subscribing to changes in the ledger (Ex. ledger, transactions, & more...)
  5. Parsing ledger data into more convenient formats (xrpToDrops and rippleTimeToISOTime)

All of which works in Node.js (tested for v14+) & web browsers (tested for Chrome).

Quickstart

Requirements

  • Node.js v16 is recommended. We also support v14, v18 and v20. Other versions may work but are not frequently tested.

Installing xrpl.js

In an existing project (with package.json), install xrpl.js with:

$ npm install --save xrpl

Or with yarn:

$ yarn add xrpl

Example usage:

const xrpl = require("xrpl");
async function main() {
  const client = new xrpl.Client("wss://s.altnet.rippletest.net:51233");
  await client.connect();

  const response = await client.request({
    command: "account_info",
    account: "rPT1Sjq2YGrBMTttX4GZHjKu9dyfzbpAYe",
    ledger_index: "validated",
  });
  console.log(response);

  client.disconnect();
}
main();

For a more in-depth example, you can copy/forking this Code Sandbox template!
https://codesandbox.io/s/xrpl-intro-pxgdjr?file=/src/App.js

It goes through:

  1. Creating a new test account
  2. Sending a payment transaction
  3. And sending requests to see your account balance!

Case by Case Setup Steps

If you're using xrpl.js with React or Deno, you'll need to do a couple extra steps to set it up:

Documentation

As you develop with xrpl.js, there's two sites you'll use extensively:

  1. xrpl.org is the primary source for:
  2. js.xrpl.org has the reference docs for this library

Mailing Lists

If you want to hear when we release new versions of xrpl.js, you can join our low-traffic mailing list (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.

Asking for help

One of the best spots to ask for help is in the XRPL Developer Discord - There's a channel for xrpl.js where other community members can help you figure out how to accomplish your goals.

You are also welcome to create an issue here and we'll do our best to respond within 3 days.

Key Links

xrpl.js's People

Contributors

wltsmrz avatar intelliot avatar geertweening avatar dependabot-preview[bot] avatar justmoon avatar ahbritto avatar dependabot[bot] avatar clark800 avatar sublimator avatar shekenahglory avatar mvadari avatar fksripple avatar darkdarkdragon avatar natenichols avatar jst5000 avatar ckniffen avatar mduo13 avatar emschwartz avatar khancode avatar ledhed2222 avatar mukulljangid avatar alandotcom avatar wilsonianb avatar jatchili avatar vhpoet avatar fredkschott avatar boxbag avatar 0xclarity avatar elmurci avatar justinr1234 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.