Modular TypeScript wallet adapters and components designed for Mina zkApps. Add wallet support into your zkApp with just a few lines of code.
Check out the demo sites below to see the Wallet Adapter in action.
- Auto-detection of installed wallets
- Automatic wallet state management
- Query hooks and modular UI components for zkApps
- Wallet Standard support
- Integration with .mina domain (Mina Names Service) (coming soon)
- TypeScript
- User Guide: mina-wallet-adapter.github.io/wallet-adapter/
- API Doc: mina-wallet-adapter.github.io/wallet-adapter/typedoc/
This is a monorepo containing the following packages.
site
: Project website with the documentations and guidelinespackages
core
: Base library containing shared interfaces, classes and common logicswallets
: Adapter class library forWallet Standard
and wrapper classes for legacy wallets like Auro Walletui
: UI components and hooks for zkApps, supportingVanilla JS
,Svelte
,React
,Vue
, andAngular
frameworksstarter
: Reference starter templates showing how to use the Wallet Adapter in zkAppssvelte
: Starter zkApp example usingSvelteKit
react
: Starter zkApp example in React created withCreate React App
contract
: Shared o1js smart contract used in above JS starter examples
Supports for Vanilla js, Vue and Angular are planned on the roadmap
This project is funded as part of the Mina Navigators Program, and it was inspired by the Aptos Wallet Adapter and Solana Wallet Adapter. Special thanks to the contributors of those projects.