I've been writing web applications that interact with the Bitcoin Cash blockchain and got tired of re-writing and copying large chunks of basic wallet management logic between them, so I created some libraries so I could stop doing that. One of these libraries is Op-Wallet, based on React, Bootstrap, and Bitbox.

Op-Wallet is an experimental, open-source Bitcoin Cash wallet library for the web browser that has a batteries included approach to BCH web app development. It aims to prevent developers from having to write wallet and key management logic and instead let them focus on writing their unique apps powered by the Bitcoin Cash blockchain. Its goal is to enable them to quickly write and deploy browser-based Bitcoin Cash apps.

Additionally, removing cryptocurrency knowledge barriers for non-blockchain developers, or at least making the learning curve a little less steep, will help improve general developer outreach. Seeing a working prototype come to life without a large time commitment is an important step in demonstrating the power of cryptocurrency and the Bitcoin Cash blockchain.

Op-Wallet ships with several features designed to get new apps out there quickly and painlessly.

basic wallet management API

basic wallet user interface

the ability to run on testnet or mainnet based on configuration

nav bar user interface for included components and your own

links to faucets and sites to buy Bitcoin Cash so users have a path to getting started

There are a couple of opinions the library brings along:

identity via address is a first-class concept; for the time being, re-use of an address to maintain this identity is a reasonable design choice

you can have multiple addresses, but there is one active address that is intended to act as the user's default identity until another address is selected

the browser's local storage is an adequate storage mechanism for wallet information

phone screens are important

It should be reiterated that Op-Wallet is experimental and should not be entrusted with significant amounts of Bitcoin Cash.

To demonstrate this library in action, I've written and deployed the Op-Wallet Memo Demo app (app link) (source code link) to demonstrate how it works.

Feedback is welcome - let me know what you think!