Skip to content

HemantKumar01/Ark-Bitcoin-Wallet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ARKane Wallet : Ark based wallet

ARKane is a wallet implementation that allows you to create and manage Ark wallets, generate onchain and offchain addresses, and send funds to Ark addresses. It also includes a faucet functionality for requesting testnet bitcoin from the Nigiri Bitcoin testing environment. This implementation is using ark-core crate to connect to ark network using grpc. Reference taken from ark-rs sample project.

Setup Instructions

Prerequisites

  • Rust and Cargo
  • Node.js and npm
  • Nigiri to quickly fire up a Bitcoin regtest environment and faucet funds.
  • Ark Server up running and funded.

Backend Setup

  1. Navigate to the backend server directory:
cd backend/server
  1. Build the project:
cargo build
  1. Run the server:
cargo run

The server will start on 127.0.0.1:8080.

Frontend Setup

  1. Navigate to the frontend directory:
cd frontend
  1. Install dependencies:
npm install
  1. Start the development server:
npm run dev

The frontend will be accessible at the displayed URL (typically http://localhost:3000).

API Endpoints

The backend server provides the following RESTful API endpoints:

  • POST /create_wallet: Creates a new wallet and returns a wallet ID
  • GET /get_address/{wallet_id}: Gets both onchain and offchain addresses for a wallet
  • GET /get_balance/{wallet_id}: Gets wallet balances (offchain and boarding)
  • POST /faucet: Requests testnet bitcoin from the faucet to an onchain address
  • POST /settle: Settles funds from boarding outputs and VTXOs
  • POST /send_to_ark_address: Sends funds to an Ark address

Features

  • Wallet creation and management
  • Onchain and offchain address generation
  • Balance checking across different states (spendable, expired, pending)
  • Sending funds to Ark addresses
  • Faucet integration for testing
  • Settlement functionality to move funds between onchain and offchain

Screenshots

Wallet Screenshot 1 Wallet Screenshot 2 Wallet Screenshot 3 Wallet Screenshot 4

About

A simple wallet that interacts with ark network and allows offchain and onchain payments.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published