DEV Community

GHOST RAYU
GHOST RAYU

Posted on

XRPL MEMO SCANNER (OPEN SOURCE)

This is a submission for Weekend Challenge: Passion Edition

What I Built

a zero-backend web tool that scans any XRP Ledger (or Xahau) address's entire transaction history and surfaces every memo it's ever left on-chain, decoded from raw hex into readable text or JSON.

The Memos field on XRPL/Xahau transactions is public, permanent, and almost entirely ignored by mainstream tooling — most explorers bury it several clicks deep, still hex-encoded. Exchanges use it for deposit tagging, dapps use it for on-chain messages and protocol metadata, and some people just use it as a free public notes field attached to a payment. I wanted a tool that treats memos as first-class: paste an address, and watch every note it's ever attached to a transaction stream in, already decoded, searchable, and filterable by date — all without sending a single byte to a server I control, because there isn't one!

Demo

Run it locally in under a minute:
https://xrplmemoscanner.netlify.app/

Code

Visit the open source repo:
https://github.com/Ghostrayu/xrplmemoscanner

How I Built It

It's a TypeScript single-page app, using the official
xrpl.js client library — and nothing else on the backend, because there is no backend. Everything account_tx returns is public ledger data; any node will answer the same query for anyone, so running it entirely client-side means no server to host, no API keys to manage, and no data ever leaves the visitor's browser!

The passion part: Xahau support. Xahau is a rippled-derived sidechain (same account_tx RPC shape, same address format, its own native asset and public nodes) built around the Hooks amendment — programmable smart-contract-like logic directly on a ledger descended from XRPL. I wanted this tool to work there too, so the network became a config object (lib/networks.ts: endpoints + explorer URL per network) instead of a hardcoded constant, with a toggle next to the address field. Because Xahau is protocol-compatible with XRPL at the RPC level, the entire scan/decode/reconnect pipeline needed zero changes — only the endpoint list and explorer link differ per network. Your last-picked network persists across reloads via localStorage.

For Dev Inquiries, please email: ghostrayu@protonmail.com

Top comments (1)

Collapse
 
topstar_ai profile image
Luis

Nice project! Open-source tools like this make blockchain data much more accessible by turning low-level transaction details into something developers can actually explore and analyze. Memo fields are especially useful for integrations, auditing, and application-level metadata.

I also like the focus on transparency. Tools that simplify inspection and debugging help developers build on XRPL with greater confidence while making it easier to understand what's happening on-chain. Looking forward to seeing how the scanner evolves!