Skip to content

mina-wallet-adapter/wallet-adapter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mina Wallet Adapter

Modular TypeScript wallet adapters and components designed for Mina zkApps. Add wallet support into your zkApp with just a few lines of code.

screenshot

Demo

Check out the demo sites below to see the Wallet Adapter in action.

👉 zkApp Starter Kit

Core Features

  • 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

Documentations

Directory Structure

This is a monorepo containing the following packages.

  • site: Project website with the documentations and guidelines
  • packages
    • core: Base library containing shared interfaces, classes and common logics
    • wallets: Adapter class library for Wallet Standard and wrapper classes for legacy wallets like Auro Wallet
    • ui: UI components and hooks for zkApps, supporting Vanilla JS, Svelte, React, Vue, and Angular frameworks
    • starter: Reference starter templates showing how to use the Wallet Adapter in zkApps
      • svelte: Starter zkApp example using SvelteKit
      • react: Starter zkApp example in React created with Create 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

Architecture

screenshot

Special Thanks

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.

License

Apache-2.0