mirror of
https://github.com/hanzoai/desktop.git
synced 2026-11-02 23:04:14 +00:00
* wip(desktop): GPU-node connect (gpu.rs/useGpuConnect/hanzo-auth) + luxwallet start + brand assets * feat(desktop): native omnichain post-quantum Lux Wallet (node-independent) Mirror of the live fix in hanzoai/gui pkgs/ai (@hanzo/ai) applied to this repo's pre-convergence frontend tree. Replaces the hanzo-node-backed crypto wallet — which couldn't create/show a wallet without a connected node — with a self-contained stack under apps/hanzo-desktop/src/lib/lux-wallet: - luxfi/crypto WASM (real FIPS-204 ML-DSA-65 + secp256k1 + keccak); EVM keys via BIP-44 keys.deriveSecp256k1 (bit-identical to ethers/MetaMask), PQ identity via keys.serviceIdentity. Secrets sealed in OS keychain, never plaintext. - create / import / list / reveal / balance / send across the 11 ready EVM chains (@luxwallet/chains + /rpc); non-EVM X/P/Q/Z marked "coming soon". - Sign-In-With-Wallet: /v1/iam/web3/nonce -> CAIP-122 -> EIP-191 sign -> /v1/iam/web3/verify (@luxwallet/connect + @luxfi/crypto). - local-HD-PQ default; MPC / Safe selectable (coming soon). Wiring: rewrite pages/crypto-wallet.tsx onto the store; node-independent /wallet route + "Sign in with Wallet" on quick-connection; drop dead wallets-context. MIT/BSD deps vendored under apps/hanzo-desktop/vendor. NOTE: this app now renders @hanzo/ai (main.tsx), so the shipping wallet fix lands via hanzoai/gui; this mirror keeps the repo's own tree consistent. * feat(desktop): the ONE network/wallet standard — shared NetworkSwitcher + WalletMenu Aligns the desktop onto the shared hanzo.network model (@hanzo/ui/network + @hanzo/ui/wallet from @hanzo/[email protected] — same standard as the hanzo CLI and console): - lib/network.ts: ONE place composing the brand network list (hanzo → canonical mainnet/testnet/devnet/local envs; zoo/lux → brand mainnet) into the shared selected-network store. - Sidebar footer mounts <NetworkSwitcher/> + <WalletMenu/> (menuSide=top); wallet auto-provisions the PQ HD account via the lux-wallet adapter (keychain-sealed secrets; backup stays on the crypto-wallet page). - Selected network drives endpoints: lux-wallet brandRpcConfig gateway + rpc override, defaultChainId, and useChainBalance now follow the selection (switch env → every chain/cloud call repoints). - styles.css: semantic token aliases + @source for the shared components. - tsconfig: moduleResolution bundler (exports-aware; tsc clean). - package.json: declare @hanzo/ai (was undeclared — npm install pruned it and broke main.tsx) + @hanzo/ui alias. tsc 0 errors; vite build green; vitest 81/81. * docs(LLM.md): the network/wallet standard — seams + gotchas * chore(desktop): bump @hanzo/ui-shadcn 5.7.3 -> 5.7.4 (genesis-canonical chain IDs) Picks up the corrected network set (testnet 36962, devnet 36964, local 1337 @ :9630/v1/bc/C/rpc). tsc 0; vite build green. --------- Co-authored-by: hanzo-dev <[email protected]>
288 lines
6.1 KiB
JSON
288 lines
6.1 KiB
JSON
{
|
|
"$schema": "https://luxwallet.org/schema/chains.v1.json",
|
|
"version": 1,
|
|
"chains": [
|
|
{
|
|
"id": "lux-c-mainnet",
|
|
"name": "Lux C-Chain",
|
|
"family": "evm",
|
|
"evmChainId": 96369,
|
|
"networkId": 96369,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "96369",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "LUX",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "lux-c-testnet",
|
|
"name": "Lux C-Chain Testnet",
|
|
"family": "evm",
|
|
"evmChainId": 96368,
|
|
"networkId": 96368,
|
|
"mainnet": false,
|
|
"testnet": true,
|
|
"rpcRoute": "96368",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "LUX",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "lux-dex",
|
|
"name": "Lux DEX Chain",
|
|
"family": "evm",
|
|
"evmChainId": 96370,
|
|
"networkId": 96370,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "96370",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "LUX",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "zoo-mainnet",
|
|
"name": "Zoo",
|
|
"family": "evm",
|
|
"evmChainId": 200200,
|
|
"networkId": 200200,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "200200",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "ZOO",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "zoo-testnet",
|
|
"name": "Zoo Testnet",
|
|
"family": "evm",
|
|
"evmChainId": 200201,
|
|
"networkId": 200201,
|
|
"mainnet": false,
|
|
"testnet": true,
|
|
"rpcRoute": "200201",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "ZOO",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "hanzo-mainnet",
|
|
"name": "Hanzo",
|
|
"family": "evm",
|
|
"evmChainId": 36963,
|
|
"networkId": 36963,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "36963",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "AI",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "hanzo-testnet",
|
|
"name": "Hanzo Testnet",
|
|
"family": "evm",
|
|
"evmChainId": 36964,
|
|
"networkId": 36964,
|
|
"mainnet": false,
|
|
"testnet": true,
|
|
"rpcRoute": "36964",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "AI",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "spc-mainnet",
|
|
"name": "Sparkle Pony",
|
|
"family": "evm",
|
|
"evmChainId": 36911,
|
|
"networkId": 36911,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "36911",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "SPC",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "spc-testnet",
|
|
"name": "Sparkle Pony Testnet",
|
|
"family": "evm",
|
|
"evmChainId": 36910,
|
|
"networkId": 36910,
|
|
"mainnet": false,
|
|
"testnet": true,
|
|
"rpcRoute": "36910",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "SPC",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "pars-mainnet",
|
|
"name": "Pars",
|
|
"family": "evm",
|
|
"evmChainId": 494949,
|
|
"networkId": 494949,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "494949",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "PARS",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "pars-testnet",
|
|
"name": "Pars Testnet",
|
|
"family": "evm",
|
|
"evmChainId": 7071,
|
|
"networkId": 7071,
|
|
"mainnet": false,
|
|
"testnet": true,
|
|
"rpcRoute": "7071",
|
|
"bip44": {
|
|
"coinType": 60,
|
|
"path": "m/44'/60'/0'/0/0"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "PARS",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "ready"
|
|
},
|
|
{
|
|
"id": "lux-x-mainnet",
|
|
"name": "Lux X-Chain",
|
|
"family": "utxo",
|
|
"networkId": 1,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "X",
|
|
"bip44": {
|
|
"coinType": 9000,
|
|
"path": "m/44'/9000'/0'"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "LUX",
|
|
"decimals": 9
|
|
},
|
|
"builderStatus": "todo"
|
|
},
|
|
{
|
|
"id": "lux-p-mainnet",
|
|
"name": "Lux P-Chain",
|
|
"family": "platform",
|
|
"networkId": 1,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "P",
|
|
"bip44": {
|
|
"coinType": 9000,
|
|
"path": "m/44'/9000'/0'"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "LUX",
|
|
"decimals": 9
|
|
},
|
|
"builderStatus": "todo"
|
|
},
|
|
{
|
|
"id": "lux-q-mainnet",
|
|
"name": "Lux Q-Chain",
|
|
"family": "pqevm",
|
|
"networkId": 1,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "Q",
|
|
"bip44": {
|
|
"coinType": 9000,
|
|
"path": "m/44'/9000'/0'"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "LUX",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "todo"
|
|
},
|
|
{
|
|
"id": "lux-z-mainnet",
|
|
"name": "Lux Z-Chain",
|
|
"family": "zk",
|
|
"networkId": 1,
|
|
"mainnet": true,
|
|
"testnet": false,
|
|
"rpcRoute": "Z",
|
|
"bip44": {
|
|
"coinType": 9000,
|
|
"path": "m/44'/9000'/0'"
|
|
},
|
|
"nativeAsset": {
|
|
"symbol": "LUX",
|
|
"decimals": 18
|
|
},
|
|
"builderStatus": "todo"
|
|
}
|
|
]
|
|
}
|