A modern, user-friendly desktop application for managing Forknet blockchain nodes. Built with React and Electron, this application provides a comprehensive interface for node management, blockchain exploration, and account management.
- Account Management: Create accounts, login with seedphrase/private key/backup files
- Security Features: Encrypted backup files, private key management, secure authentication
- Node Management: Monitor node health, peers, sync status, and minting accounts
- Blockchain Explorer: Search and view all blockchain transactions with detailed filtering
- Peer Management: Add/remove peers, force sync with specific peers
- Node Control: Start, stop, and restart node operations (desktop version only)
- Real-time Monitoring: Auto-refresh data, connection status, sync progress
- Wallet Functionality: Send and receive FRK transactions
- Minting Details: Detailed blockchain statistics and minting rewards
- Forknet Core: Must be running locally on port 10391
# Install Node.js 18+ and npm
# Ubuntu/Debian:
sudo apt update && sudo apt install nodejs npm
# macOS (with Homebrew):
brew install node
# Windows: Download from nodejs.org# 1. Clone the repository
git clone https://github.com/bydodgers/Forknet-UI.git
cd Forknet-UI
# 2. Install dependencies
npm install
# 3. Build for your platform
npm run build-electron
# 4. Find your built app
# macOS: dist/Forknet UI.app
# Windows: dist/Forknet UI Setup.exe
# Linux: dist/Forknet UI.AppImage# Build for all platforms (requires platform-specific tools)
npm run build-electron-all
# Or build for specific platforms
npm run build-mac # macOS
npm run build-win # Windows
npm run build-linux # Linux- Start Forknet Core first (must be running on
localhost:10391) - Launch Forknet UI
- Create a new account or login:
- New Users: Click "Create New Account" for a secure seedphrase
- Existing Users: Login with seedphrase, private key, or backup file
- View account balance and level
- Access all major features
- Quick security actions (backup, private key access)
- System status overview
- Peer Management: Add/remove blockchain peers
- Sync Control: Force sync with network
- Minting Setup: Configure block minting (requires Level 1+)
- Node Control: Start/stop/restart your Forknet node
- Transaction Search: Filter by type, address, block range
- Real-time Data: Latest transactions and blocks
- Detailed View: Expand transactions for full details
- Advanced Filters: Custom search parameters
- Backup Creation: Encrypted JSON backups with password
- Private Key Access: Secure viewing with multi-step confirmation
- Auto-logout: Secure session management
The app connects to Forknet Core at http://localhost:10391. Admin features require an API key that Forknet Core generates automatically.
- Default: 30-second refresh intervals
- Customizable: 10 seconds to 5 minutes
- Smart Detection: Automatically detects node restarts
- Private Key Protection: Multi-step access with warnings
- Backup Encryption: AES-256 encryption with user passwords
- Session Management: Automatic logout on app close
- Frontend: React 19.1.0 with TypeScript
- UI Framework: Material-UI 7.1.0
- State Management: Redux Toolkit
- Desktop: Electron 28.3.3
- Routing: React Router 7.x (HashRouter for Electron compatibility)
- Cryptography: Noble curves/hashes (Forknet-compatible)
- Build Tools: Create React App, Electron Builder
# Development mode
npm start # Web version (limited functionality)
npm run electron-dev # Electron development with hot reload
# Building
npm run build # Web build
npm run build-electron # Desktop app for current platform
npm run build-electron-all # All platforms (requires setup)
# Analysis
npm run analyze # Bundle size analysis
npm test # Run testsThe application connects to Forknet Core API running on http://localhost:10391. Admin features require an API key automatically generated by Forknet Core at ~/forknet-core/apikey.txt.
"No API key found"
- Ensure Forknet Core is running and has generated
~/forknet-core/apikey.txt
"Connection refused"
- Check that Forknet Core is running on
localhost:10391 - Verify firewall settings
"Invalid backup file"
- Ensure you're using a valid Forknet backup JSON file
- Check that you have the correct password
"Application entry file not found" during build
- Make sure you're using
npm run build-electroninstead ofnpm run dist - Verify that
electron-is-devis in dependencies (not devDependencies)
"404 Page Not Found" when opening desktop app
- This indicates a routing issue - the app should use HashRouter for Electron compatibility
- Try rebuilding with
npm run build-electron
"Cannot find module 'electron-is-dev'" error
- Run
npm installto ensure all dependencies are properly installed - Check that
electron-is-devis listed in dependencies in package.json
- Forknet Testnet: This application is designed for the Forknet test network
- Blockchain Resets: The testnet may restart periodically
- Backup Strategy: Always maintain secure backups of your account credentials
- Development Status: Some features are still in development