DragonFire Developer Portal

Wallet SDK

Related Resources

Dragon Wallet Service Registration

Register for DragonFire's Wallet Service to access our secure identity management platform, vector transactions, and seamless authentication with other DragonFire services.

Managed Service

Dragon Wallets is a fully managed service provided by DragonFire. No code download required - you'll get secure API access to our cloud infrastructure. This approach ensures maximum security and eliminates the need to manage sensitive cryptographic components.

Service Plans

Dragon Wallet - Standard

Current Version

API access for integrating Dragon Wallet services in web applications with comprehensive identity management.

  • Managed identity services
  • Secure API endpoints
  • Vector transaction processing
  • RWT authentication integration
  • Standard SLA (99.9% uptime)
Recommended for: Small to medium businesses, startups, personal projects

Dragon Wallet - Mobile Access

Current Version

Mobile API integration for iOS and Android applications with enhanced mobile security features.

  • iOS and Android native API endpoints
  • Secure authentication flows
  • Biometric validation
  • QR code transaction flow
  • Mobile SDKs for convenient integration
Recommended for: Mobile app developers, fintech applications

Dragon Wallet - Enterprise

Current Version

Enterprise-grade wallet services with dedicated resources, enhanced SLAs, and priority support.

  • Dedicated service infrastructure
  • Enterprise-grade security
  • Custom integration options
  • High-throughput processing
  • Premium SLA (99.99% uptime)
Recommended for: Large enterprises, financial institutions, high-volume applications

Browser Extension

Chrome Extension

Chrome Web Store

Firefox Extension

Firefox Add-ons

Edge Extension

Edge Add-ons

Installation

For detailed installation instructions, please see the Setup Guide. Basic installation steps:

# Using npm
npm install @dragonfire/wallet-sdk

# Using yarn
yarn add @dragonfire/wallet-sdk

# Or include directly in HTML
<script src="https://cdn.dragonfire.ai/sdk/wallet/1.4.2/wallet-sdk.min.js"></script>
# Using npm
npm install @dragonfire/wallet-sdk-react-native

# Using yarn
yarn add @dragonfire/wallet-sdk-react-native

# Link native modules
npx react-native link @dragonfire/wallet-sdk-react-native
# Node.js
npm install @dragonfire/wallet-sdk-server

# Python
pip install dragonfire-wallet-server

# Java
implementation 'io.dragonfire:wallet-server:1.4.2'

System Requirements

JavaScript SDK

  • Browser Support: Chrome 60+, Firefox 55+, Safari 11+, Edge 16+
  • Node.js: 12.0.0 or higher
  • Dependencies: WebCrypto API, LocalStorage or IndexedDB
  • Optional: Browser extension for enhanced security

Mobile SDK

  • iOS: iOS 13.0 or higher
  • Android: Android 6.0+ (API level 23+)
  • React Native: 0.63 or higher (for React Native integration)
  • Device Features: Secure enclave/keystore support recommended

Server SDK

  • Node.js: 14.0.0 or higher
  • Java: JDK 11 or higher
  • Python: 3.8 or higher
  • Memory: 1GB RAM minimum (4GB+ recommended for high-throughput)

Key Features

Secure Identity Management

Create and manage blockchain-secure digital identities with hierarchical deterministic key derivation.

Vector Transactions

Process mathematically optimized transactions in multi-dimensional vector spaces for efficient value transfer.

RWT Authentication

Seamless integration with DragonFire's Rotational WebSocket protocol for secure authenticated connections.

Browser Extensions

Enhanced security through isolation of sensitive operations in a dedicated browser extension environment.

Cross-Platform Compatibility

Consistent API across web, mobile, and server environments with platform-specific optimizations.

Phi-Resonant Architecture

Mathematically optimized structures based on the golden ratio for harmonious data organization.

Licensing

Developer License

The Dragon Wallet SDK is available under the DragonFire Developer License, which allows for:

  • Non-commercial development and testing
  • Educational use
  • Personal projects

See the full license text for details.

Commercial License

For commercial applications, a commercial license is required. Commercial licenses include:

  • Permission to distribute in commercial applications
  • Priority support
  • Enhanced security features
  • Custom integration assistance

Contact licensing@dragonfire.ai for commercial licensing information.

Getting Started

After downloading the SDK, visit our Setup Guide for detailed information on installation, configuration, and basic usage.

Quick Example

import { DragonWallet } from '@dragonfire/wallet-sdk';

// Initialize the wallet client
const wallet = new DragonWallet({
  appId: 'YOUR_APP_ID',
  network: 'mainnet',
  storageType: 'local'
});

// Check for existing wallet or create a new one
async function initializeWallet() {
  try {
    // Check if user has a wallet
    const hasWallet = await wallet.hasWallet();
    
    if (hasWallet) {
      // Connect to existing wallet
      await wallet.connect();
      console.log('Connected to existing wallet');
      
      // Get wallet information
      const info = await wallet.getInfo();
      console.log('Wallet info:', info);
    } else {
      // Create a new wallet
      const newWallet = await wallet.create({
        name: 'My DragonFire Wallet',
        securityLevel: 'high'
      });
      
      console.log('New wallet created:', newWallet.id);
    }
    
    // Register for events
    wallet.on('transaction', handleTransaction);
    
    // Ready to use the wallet
    return wallet;
  } catch (error) {
    console.error('Wallet initialization error:', error);
    throw error;
  }
}

// Create a vector transaction
async function sendTransaction(recipient, amount, dimensions = 7) {
  try {
    const transaction = await wallet.createTransaction({
      recipient: recipient,
      amount: amount,
      dimensions: dimensions,
      metadata: {
        purpose: 'test transaction',
        timestamp: Date.now()
      }
    });
    
    const result = await wallet.sendTransaction(transaction);
    console.log('Transaction sent:', result.id);
    return result;
  } catch (error) {
    console.error('Transaction error:', error);
    throw error;
  }
}

// Handle incoming transactions
function handleTransaction(transaction) {
  console.log('New transaction received:', transaction);
  
  // Update UI or notify user
  if (transaction.type === 'incoming') {
    showNotification(`Received ${transaction.amount} from ${transaction.sender}`);
  }
}