Skip to content

feat: add browser wasm package#216

Open
beeman wants to merge 1 commit into
open-wallet-standard:mainfrom
beeman:beeman/browser-web-package
Open

feat: add browser wasm package#216
beeman wants to merge 1 commit into
open-wallet-standard:mainfrom
beeman:beeman/browser-web-package

Conversation

@beeman
Copy link
Copy Markdown

@beeman beeman commented Apr 24, 2026

What

Add the @open-wallet-standard/web package with WASM bindings, browser storage adapters, and TypeScript declarations.

Document the browser SDK, include it in package tables, and add CI coverage for cargo check, wasm-pack build, and JS store tests.

Gate xrpl-rust behind native targets and provide wasm-compatible XRPL address and signing helpers for the web build.

Why

Making OWS available in the browser lets web apps reuse the same audited wallet, policy, and signing semantics as other OWS runtimes. That can improve security over ad hoc browser implementations and avoid backend key custody, while still respecting the browser’s security limits.

Closes #

Testing

  • cargo test --workspace passes
  • cargo clippy --workspace -- -D warnings is clean
  • npm test passes (if Node bindings changed)
  • Tested manually with ows CLI

Notes

  1. There may be a follow-up cleanup opportunity in ows/crates/ows-signer/src/chains/xrpl.rs. This PR keeps the XRPL changes minimal for browser support, but the native/wasm split could probably be made cleaner in a separate pass. Let me know if you want it in this PR.

  2. Working on a simple web based demo to show how this works.

Add the @open-wallet-standard/web package with WASM bindings, browser storage adapters, and TypeScript declarations.

Document the browser SDK, include it in package tables, and add CI coverage for cargo check, wasm-pack build, and JS store tests.

Gate xrpl-rust behind native targets and provide wasm-compatible XRPL address and signing helpers for the web build.
@beeman beeman requested a review from njdawn as a code owner April 24, 2026 04:24
@vercel
Copy link
Copy Markdown

vercel Bot commented Apr 24, 2026

@beeman is attempting to deploy a commit to the MoonPay Team on Vercel.

A member of the Team first needs to authorize it.

@socket-security
Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedcargo/​wasm-bindgen@​0.2.1188110093100100
Addedcargo/​uuid@​1.23.110010093100100

View full report

@njdawn
Copy link
Copy Markdown
Contributor

njdawn commented May 5, 2026

hi! could you share web app + concrete use case?

@beeman
Copy link
Copy Markdown
Author

beeman commented May 5, 2026

Hi @njdawn - thanks for looking at this!

I'm considering to use this in samui-wallet.

It seems way better to use a proven structure and toolset to store the secrets vs an ad-hoc implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants