Commit Graph

17 Commits

Author SHA1 Message Date
ca133132f6 feat: rename app to Wallet Generator and add wallet save to disk
- Rename app to 'Wallet Generator' (index.html, window title, sidebar, package.json)
- Add ~/.wallet-generator/wallet/ as save directory for all generated wallets
- Add save-wallet and get-wallet-dir IPC handlers in Electron main process
- Expose saveWallet/getWalletDir via preload contextBridge
- HDWallet: save JSON to disk with optional encryption, show saved path
- SingleAddress: add Save card with editable filename for all address types
2026-03-09 14:31:40 +01:00
aeda67f72a chore: update deps and scripts for Electron-only architecture
- Add electron, concurrently, wait-on, cross-env to frontend devDependencies
- Set "main": "electron/main.cjs" in frontend/package.json
- Simplify root package.json dev script
- Remove fastapi and uvicorn from requirements.txt
2026-03-09 14:24:16 +01:00
9ce830eb6d refactor: replace fetch() calls with window.electronAPI in React components
- HDWallet, SingleAddress, DecryptWallet now call window.electronAPI.*
- Remove Vite proxy (no more HTTP backend)
2026-03-09 14:24:04 +01:00
944b30126d feat: replace HTTP API with Electron IPC + Python CLI dispatcher
- Add src/cli.py: dispatches commands to Python functions, returns JSON
- Add frontend/electron/main.cjs: ipcMain handlers call Python via execFile
- Add frontend/electron/preload.cjs: exposes window.electronAPI to renderer
- No uvicorn/FastAPI server needed — Python called directly per request
2026-03-09 14:23:35 +01:00
cbbc34071c chore: add root npm workspace and update gitignore
- Root package.json with npm run dev (concurrently API + Vite)
- Add node_modules/, frontend/dist/ to .gitignore
- Whitelist package.json and package-lock.json
2026-03-09 14:09:12 +01:00
eaf3eb6801 feat: add React web frontend with dark Electrum-like UI
- Vite + React app with dark Bitcoin-orange theme
- HD Wallet: generate, display seed/xpub/addresses, save with encryption
- Single addresses: P2PKH, P2WPKH, P2TR, P2PK, P2SH (multisig)
- Decrypt: load encrypted JSON wallet and reveal private data
- Bitcoin SVG icon in public/icons/
- Vite proxy /api → localhost:8000
2026-03-09 14:09:07 +01:00
f9c35678a5 feat: add FastAPI REST backend
Expose all address generation functions as HTTP endpoints:
- POST /api/hd/generate, /api/hd/encrypt, /api/hd/decrypt
- POST /api/p2pk, /api/p2pkh, /api/p2sh, /api/p2wpkh, /api/p2tr
- Add fastapi and uvicorn to requirements.txt
2026-03-09 14:08:59 +01:00
54d282a36b feat: add Electrum-compatible wallet encryption
- Add src/crypto.py with AES-256-CBC pw_encode/pw_decode
  using double SHA256 key derivation (Electrum standard)
- Add encrypt_wallet() and decrypt_wallet() to src/hd_wallet.py
- Prompt for encryption password when saving HD wallet to file
- Add 13 encryption/decryption tests to tests/test_hd_wallet.py
- Add pycryptodome to requirements.txt
2026-03-09 13:35:33 +01:00
44e60383cf Update README.md 2026-03-09 12:17:07 +01:00
040a72c378 chore: translate all source files to English
- Translate docstrings, comments, print statements, input prompts
  and error messages across all src/ scripts and __main__.py
- Update LICENSE copyright holder to Davide Grilli (2026)
- p2pk: input prompt changed from s/n to y/n for compressed key selection
2026-03-09 12:14:11 +01:00
2727844ec8 feat: add HD wallet generator with BIP-44/49/84/86 support
- Add src/hd_wallet.py with deterministic key derivation (BIP-32/39)
- Support P2PKH (BIP-44), P2SH-P2WPKH (BIP-49), P2WPKH (BIP-84), P2TR (BIP-86)
- JSON output aligned to Electrum wallet format (keystore, xpub/xprv, derivation path, root fingerprint)
- Add tests/test_hd_wallet.py with 34 tests (structure, prefixes, determinism, SecretScan)
- Add bip-utils to requirements.txt
- Add option 6 to __main__.py menu
2026-03-09 12:04:43 +01:00
409669e000 test: add tests/ folder with SecretScan verification links
- Add pytest test suite for all 5 address types (P2PK, P2PKH, P2SH, P2WPKH, P2TR)
- Test output fields, address prefixes per network, key lengths and uniqueness
- Each test file prints the SecretScan URL for manual address verification
- Add pytest to requirements.txt
2026-03-09 11:11:41 +01:00
290c371169 refactor: reorganize project into src/ structure
- Move all scripts (p2pk, p2pkh, p2sh, p2wpkh, p2tr) into src/
- Rename main.py to __main__.py to allow running with `python .`
- Update script paths in __main__.py
- Translate README to English and update launch instructions
- Add __pycache__, *.pyc, *.json to .gitignore
2026-03-09 11:07:03 +01:00
f9cc995f93 Create LICENSE 2025-11-10 16:51:28 +01:00
63048d5b18 Aggiunge le istruzioni al file README.md
Aggiungi comandi PowerShell per gli utenti Windows per creare un ambiente virtuale e attivarlo, rendendo le istruzioni di installazione più complete per diversi sistemi operativi
2025-11-10 16:22:10 +01:00
1b3291c821 Aggiunge ambienti virtuali Python a gitignore 2025-11-10 16:18:24 +01:00
61788ce312 feat: prima implementazione del generatore di indirizzi Bitcoin 2025-11-10 16:12:36 +01:00