Gulshan Yadav
81347ab15d
feat(wallet): add comprehensive desktop wallet features
...
Add all-in-one desktop wallet with extensive feature set:
Infrastructure:
- Storage: IPFS-based decentralized file storage with upload/download
- Hosting: Domain registration and static site hosting
- Compute: GPU/CPU job marketplace for distributed computing
- Database: Multi-model database services (KV, Document, Vector, etc.)
Financial Features:
- Privacy: Confidential transactions with Pedersen commitments
- Bridge: Cross-chain transfers (Ethereum, Bitcoin, IBC/Cosmos)
- Governance: DAO proposals, voting, and delegation
- ZK-Rollup: L2 scaling with deposits, withdrawals, and transfers
UI/UX Improvements:
- Add ErrorBoundary component for graceful error handling
- Add LoadingStates components (spinners, skeletons, overlays)
- Add Animation components (FadeIn, SlideIn, CountUp, etc.)
- Update navigation with new feature sections
Testing:
- Add Playwright E2E smoke tests
- Test route accessibility and page rendering
- Verify build process and asset loading
Build:
- Fix TypeScript compilation errors
- Update Tauri plugin dependencies
- Successfully build macOS app bundle and DMG
2026-02-02 11:35:21 +05:30
Gulshan Yadav
63c52b26b2
feat(desktop-wallet): add comprehensive wallet features
...
Add 10 major features to complete the desktop wallet:
- Staking: Stake SYN tokens for rewards with pool management
- DEX/Swap: Built-in token swap interface with liquidity pools
- Address Book: Save and manage frequently used addresses
- DApp Browser: Interact with decentralized applications
- Hardware Wallet: Ledger/Trezor support for secure signing
- Multi-sig Wallets: Require multiple signatures for transactions
- Price Charts: Market data and real-time price tracking
- Notifications: Push notifications for transactions and alerts
- QR Scanner: Generate and parse payment QR codes
- Backup/Export: Encrypted wallet backup and recovery
Includes Tauri backend commands for all features, Zustand stores
for state management, and complete UI pages with navigation.
2026-02-02 09:57:55 +05:30
Gulshan Yadav
d81b5fe81b
feat(desktop-wallet): add NFT support
...
Add complete NFT (non-fungible token) functionality:
Backend (Rust/Tauri):
- nft_create_collection: Deploy new NFT collection contract
- nft_mint, nft_batch_mint: Mint single or multiple NFTs
- nft_transfer: Transfer NFT ownership
- nft_burn: Permanently destroy NFT
- nft_list_owned: List all NFTs owned by address
- nft_get_collection_info, nft_get_token_info: Query metadata
- nft_set_approval_for_all, nft_set_base_uri: Collection management
Frontend (React/TypeScript):
- NFT Zustand store with collection tracking
- NftsDashboard page with 5 tabs:
- Gallery: Visual grid of owned NFTs with modal details
- Collections: Track and manage NFT collections
- Create: Deploy new collection with royalties and soulbound options
- Mint: Mint new NFTs with metadata URIs
- Transfer: Send NFTs to other addresses
- Navigation sidebar updated with NFTs link
- Route added for /nfts path
Features:
- Royalty configuration in basis points (e.g., 250 = 2.5%)
- Soulbound token support (non-transferable)
- Batch minting up to 100 NFTs
- Collection import by contract address
- NFT burn with confirmation dialog
2026-02-02 09:23:07 +05:30
Gulshan Yadav
a5e4fc1c21
feat(desktop-wallet): add smart contracts and tokens UI
...
Add complete frontend and backend implementation for smart contracts
and tokens management:
Backend (Rust/Tauri):
- Add contract_deploy, contract_call, contract_read, contract_get_info commands
- Add token_create, token_transfer, token_get_info, token_get_balance commands
- Add token_list_balances, token_mint, token_burn commands
- Add new error variants for validation and contract errors
Frontend (React/TypeScript):
- Add contracts Zustand store with persistence
- Add tokens Zustand store with persistence
- Add ContractsDashboard page with deploy/interact tabs
- Add TokensDashboard page with balances/create/transfer/manage tabs
- Update navigation sidebar with Contracts and Tokens links
- Add routes for new pages
2026-02-02 09:03:58 +05:30
Gulshan Yadav
5126c33113
ui/ux
2026-02-02 05:12:01 +05:30
Gulshan Yadav
5cd6fdcb35
desktop wallet enhancements
2026-02-02 04:54:53 +05:30
Gulshan Yadav
c58081b8c9
fix: wallet build failures - BigInt literal and icons
...
- Replace 0n BigInt literal with BigInt(0) for Safari 13 compatibility
- Generate proper app icons for Windows (.ico) and macOS (.icns)
2026-02-02 02:42:59 +05:30
Gulshan Yadav
cca23a4019
fix: resolve TypeScript errors in desktop wallet
...
- Remove unused MULTIPLIER variable in Send.tsx
- Remove unused Check import in Settings.tsx
- Add vite-env.d.ts for ImportMeta.env types
2026-02-02 02:26:08 +05:30
Gulshan Yadav
f56a6f5088
feat(wallet): add OS keychain integration with biometric unlock
...
Add cross-platform keychain support using the keyring crate for secure
credential storage with biometric authentication (TouchID on macOS,
Windows Hello on Windows, Secret Service on Linux).
- Add keychain module with enable/disable biometric unlock
- Add Tauri commands for keychain operations
- Add Keychain error variant for proper error handling
- Add Java SDK foundation
- Update milestone docs to reflect 95% completion
2026-01-11 17:31:21 +05:30
Gulshan Yadav
f23e7928ea
fix(desktop-wallet): update crypto APIs for bech32 v0.11 and bip39 v2
...
- Update bech32 encoding to use Hrp struct and segwit::encode
- Update bip39 to use from_entropy() instead of generate_in()
- Update Mnemonic::parse() instead of parse_in(Language)
- Fix HMAC ambiguity with explicit type annotation
- Add Debug and Clone derives to EncryptedWallet
- Use show_menu_on_left_click() (deprecation fix)
- Add placeholder icons for development builds
2026-01-10 07:08:47 +05:30
Gulshan Yadav
ce5c996b35
feat(desktop-wallet): add system tray and auto-updater
...
- Add system tray with menu: Show, Hide, Lock, Check Updates, Quit
- Integrate tauri-plugin-updater for seamless auto-updates
- Add UpdateBanner component for update notifications
- Add useAutoUpdater hook for update state management
- Add useTrayEvents hook for tray event handling
- Add Updates section to Settings page for manual update checks
- Configure updater endpoints in tauri.conf.json
- Exclude desktop-wallet from Cargo workspace (uses own Tauri deps)
2026-01-10 06:55:44 +05:30
Gulshan Yadav
6b5a232a5e
feat: Desktop wallet, gas estimator UI, and 30-day monitoring stack
...
Security (Desktop Wallet):
- Implement BIP39 mnemonic generation with cryptographic RNG
- Add Argon2id password-based key derivation (64MB, 3 iterations)
- Add ChaCha20-Poly1305 authenticated encryption for seed storage
- Add mnemonic auto-clear (60s timeout) and clipboard auto-clear (30s)
- Add sanitized error logging to prevent credential leaks
- Strengthen CSP with object-src, base-uri, form-action, frame-ancestors
- Clear sensitive state on component unmount
Explorer (Gas Estimator):
- Add Gas Estimation page with from/to/amount/data inputs
- Add bech32 address validation (synor1/tsynor1 prefix)
- Add BigInt-based amount parsing to avoid floating point errors
- Add production guard for mock mode (cannot enable in prod builds)
Monitoring (30-day Testnet):
- Add Prometheus config with 30-day retention
- Add comprehensive alert rules for node health, consensus, network, mempool
- Add Alertmanager with severity-based routing and inhibition rules
- Add Grafana with auto-provisioned datasource and dashboard
- Add Synor testnet dashboard with uptime SLA tracking
Docker:
- Update docker-compose.testnet.yml with monitoring profile
- Fix node-exporter for macOS Docker Desktop compatibility
- Change Grafana port to 3001 to avoid conflict
2026-01-10 04:38:09 +05:30