Skip to content

A TypeScript library and CLI tool for generating deterministic ethereum wallet with a combination of mnemonics and/or private keys

Notifications You must be signed in to change notification settings

Complexlity/keyfuse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Keyfuse 🔑

A TypeScript library and CLI tool for generating deterministic ethereum wallet with a combination of mnemonics and/or private keys.

Features

  • Interactive CLI for easy wallet management
  • Deterministic key derivation
  • Support for both mnemonics and private keys

Table of Contents

  1. CLI Tool

  2. Package

  3. Development

  4. License


CLI Tool

CLI Installation

Install the CLI tool globally:

Using npm

npx keyfuse
# or
npm install -g keyfuse
keyfuse

Using Bun

bunx keyfuse
# or
bun add -g keyfuse
keyfuse

CLI Usage

The CLI guides you through:

  • Adding mnemonic phrases
  • Adding private keys
  • Generating deterministic wallets

CLI Options

Usage: keyfuse [options]

Options:
  -o, --output <filename>  Output file path for the generated wallet (default: wallet.json)
  -h, --help               Display help
  -V, --version            Display version

Package

Package Installation

Add Keyfuse to your project:

Using npm

npm install keyfuse

Using Bun

bun add keyfuse

Package Usage

import { FusedWallet } from 'keyfuse';

// Create a new wallet instance
const wallet = new FusedWallet();

// Add wallets using mnemonics or private keys
wallet.addMnemonic('your mnemonic phrase here');
wallet.addPrivateKey('0x...');

// Generate deterministic wallet
const deterministicWallet = wallet.generateDeterministicWallet();

// Get wallet information
const info = wallet.getWalletInfo();

API Documentation

FusedWallet

Main class for managing multiple wallets and generating deterministic keys.

Methods
  • addMnemonic(mnemonic: string, accountNumber = 0): void
    Add a wallet using a mnemonic phrase and optional account index.

  • addPrivateKey(privateKey: string): void
    Add a wallet using a private key.

  • generateDeterministicWallet(): DeterministicWallet
    Generate a deterministic wallet from all added wallets.

  • getWalletInfo(): WalletInfo
    Get information about the wallet collection.

  • clear(): void
    Clear all stored wallet data.

Development

  1. Clone the repository
  2. Install dependencies:
    # Using npm
    npm install
    
    # Or using Bun
    bun install
  3. Build the project:
    # Using npm
    npm run build
    
    # Or using Bun
    bun run build
  4. Run tests:
    # Using npm
    npm test
    
    # Or using Bun
    bun test

License

MIT

About

A TypeScript library and CLI tool for generating deterministic ethereum wallet with a combination of mnemonics and/or private keys

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published