{"_id":"@0xlimao/n8n-nodes-ethereum","_rev":"3-b4a4b8d2fcd68bab298e8820c134f97c","name":"@0xlimao/n8n-nodes-ethereum","dist-tags":{"latest":"1.0.1"},"versions":{"0.1.1":{"name":"@0xlimao/n8n-nodes-ethereum","version":"0.1.1","keywords":["n8n","n8n-community-node-package","ethereum","blockchain","viem","web3"],"author":"","license":"MIT","_id":"@0xlimao/n8n-nodes-ethereum@0.1.1","maintainers":[{"name":"flyinglimao","email":"hi@limaois.me"}],"homepage":"https://github.com/flyinglimao/n8n-ethereum#readme","bugs":{"url":"https://github.com/flyinglimao/n8n-ethereum/issues"},"n8n":{"nodes":["dist/nodes/Ethereum/Ethereum.node.js","dist/nodes/EthereumTrigger/EthereumTrigger.node.js"],"credentials":["dist/credentials/EthereumRpc.credentials.js","dist/credentials/EthereumAccount.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"dd11000daed6eaf98769ecd7b283c3325f9166b4","tarball":"https://registry.npmjs.org/@0xlimao/n8n-nodes-ethereum/-/n8n-nodes-ethereum-0.1.1.tgz","fileCount":56,"integrity":"sha512-r2YHbxB10b6+aJlms0IVoTf7WipS6IIyw17oxOdqjE6AY8ey+6Yjlk52Ycn5+SrvHTax+2ZuaZgSR7DUf5T9bg==","signatures":[{"sig":"MEQCIBPb7IyfA4wTAqrYsWDSwkEs9IHWESW2kbk4g/OYTjlUAiAYF+v2WYnJxUsfoX2KV3iZJvT0enPSHWaoZ7ikXwUyUA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1282054},"main":"dist/index.js","gitHead":"38ce69095a1c4dfafb8345d1c199ec326390b9db","scripts":{"dev":"tsc --watch","lint":"eslint . --ext .ts","test":"vitest","build":"tsc && gulp build:icons","format":"prettier --write \"**/*.ts\""},"_npmUser":{"name":"flyinglimao","email":"hi@limaois.me"},"repository":{"url":"git+https://github.com/flyinglimao/n8n-ethereum.git","type":"git"},"_npmVersion":"11.5.1","description":"Comprehensive Ethereum blockchain integration for n8n with unified node structure using viem","directories":{},"_nodeVersion":"24.6.0","dependencies":{"viem":"^2.21.0","abitype":"^1.0.0","n8n-core":"^1.0.0","n8n-workflow":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.1","eslint":"^8.0.0","vitest":"^1.0.0","hardhat":"^2.19.0","prettier":"^3.0.0","typescript":"^5.3.0","@types/node":"^20.19.27","@typescript-eslint/parser":"^6.0.0","@nomicfoundation/hardhat-viem":"^2.0.0","@typescript-eslint/eslint-plugin":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-ethereum_0.1.1_1766550023982_0.11122097751744109","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@0xlimao/n8n-nodes-ethereum","version":"1.0.0","keywords":["n8n","n8n-community-node-package","ethereum","blockchain","viem","web3"],"author":"","license":"MIT","_id":"@0xlimao/n8n-nodes-ethereum@1.0.0","maintainers":[{"name":"flyinglimao","email":"hi@limaois.me"}],"homepage":"https://github.com/flyinglimao/n8n-ethereum#readme","bugs":{"url":"https://github.com/flyinglimao/n8n-ethereum/issues"},"n8n":{"nodes":["dist/nodes/Ethereum/Ethereum.node.js","dist/nodes/EthereumTrigger/EthereumTrigger.node.js"],"credentials":["dist/credentials/EthereumRpc.credentials.js","dist/credentials/EthereumAccount.credentials.js"],"n8nNodesApiVersion":1},"dist":{"shasum":"ef5921435319b7dc87ed6cb194b7814f11e6001a","tarball":"https://registry.npmjs.org/@0xlimao/n8n-nodes-ethereum/-/n8n-nodes-ethereum-1.0.0.tgz","fileCount":215,"integrity":"sha512-zaO/rz173O0QcAt95TJ1Zd8tpUDcQzrV6qjg7KA74+5kYnYz8rNtZ91oNJ++dcyvhc0fmxXVDB4/eHtHGEDSsA==","signatures":[{"sig":"MEYCIQDEKs5XS5uJv+M30sUK8aUpgnPfL7e9csCr7wpvTrps6AIhAPknXMg5HfcfWUOSNANj7VhZshB+i9aNwPi2YJ9QNg8f","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@0xlimao%2fn8n-nodes-ethereum@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1743566},"main":"dist/index.js","type":"module","gitHead":"d223843be83bbe983fbc9edc1ec2a3208525ebcb","scripts":{"dev":"tsc --watch","lint":"eslint . --ext .ts","test":"vitest","build":"tsc && gulp build:icons","format":"prettier --write \"**/*.ts\"","test:n8n":"N8N_USER_FOLDER=/tmp/.test-n8n n8n","test:node":"node tests/scripts/start-hardhat-network.mjs","test:setup":"node tests/scripts/setup.mjs","test:deploy":"node tests/scripts/deploy-contracts.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4157d6c5-b15b-47d8-af2f-5042090b412c"}},"repository":{"url":"git+https://github.com/flyinglimao/n8n-ethereum.git","type":"git"},"_npmVersion":"11.6.2","description":"Comprehensive Ethereum blockchain integration for n8n with unified node structure using viem","directories":{},"_nodeVersion":"24.12.0","dependencies":{"viem":"^2.43.4","abitype":"^1.2.3","n8n-core":"^2.2.1","n8n-workflow":"^2.2.1"},"_hasShrinkwrap":false,"devDependencies":{"gulp":"^5.0.1","eslint":"^9.39.2","vitest":"^4.0.16","hardhat":"^3.1.2","prettier":"^3.7.4","typescript":"^5.9.3","@types/node":"^22.13.14","@openzeppelin/contracts":"^5.4.0","@typescript-eslint/parser":"^8.51.0","@nomicfoundation/hardhat-viem":"^3.0.1","@typescript-eslint/eslint-plugin":"^8.51.0"},"_npmOperationalInternal":{"tmp":"tmp/n8n-nodes-ethereum_1.0.0_1767669890243_0.8631546439638706","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@0xlimao/n8n-nodes-ethereum","version":"1.0.1","description":"Comprehensive Ethereum blockchain integration for n8n with unified node structure using viem","scripts":{"build":"tsc && gulp build:icons","dev":"tsc --watch","test":"vitest","test:n8n":"N8N_USER_FOLDER=/tmp/.test-n8n n8n","test:node":"node tests/scripts/start-hardhat-network.mjs","test:setup":"node tests/scripts/setup.mjs","test:deploy":"node tests/scripts/deploy-contracts.mjs","lint":"eslint . --ext .ts","format":"prettier --write \"**/*.ts\""},"keywords":["n8n","n8n-community-node-package","ethereum","blockchain","viem","web3"],"n8n":{"n8nNodesApiVersion":1,"credentials":["dist/credentials/EthereumRpc.credentials.js","dist/credentials/EthereumAccount.credentials.js"],"nodes":["dist/nodes/Ethereum/Ethereum.node.js","dist/nodes/EthereumTrigger/EthereumTrigger.node.js"]},"author":"","license":"MIT","dependencies":{"abitype":"^1.2.3","n8n-core":"^2.2.1","n8n-workflow":"^2.2.1","viem":"^2.43.4"},"devDependencies":{"@nomicfoundation/hardhat-viem":"^3.0.1","@openzeppelin/contracts":"^5.4.0","@types/node":"^22.13.14","@typescript-eslint/eslint-plugin":"^8.51.0","@typescript-eslint/parser":"^8.51.0","eslint":"^9.39.2","gulp":"^5.0.1","hardhat":"^3.1.2","prettier":"^3.7.4","typescript":"^5.9.3","vitest":"^4.0.16"},"repository":{"type":"git","url":"git+https://github.com/flyinglimao/n8n-ethereum.git"},"gitHead":"454ae02583c3ed294bbc2e3094b3854527a66775","_id":"@0xlimao/n8n-nodes-ethereum@1.0.1","bugs":{"url":"https://github.com/flyinglimao/n8n-ethereum/issues"},"homepage":"https://github.com/flyinglimao/n8n-ethereum#readme","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-wD0nHJ0sx9l5DnZcW2Kdkgp2QgINc1QUezyN0+vcbCe/n/hzbe/k+WbMyOhMvj8R3L2pV5iWEGnIB+UYvtPgLQ==","shasum":"6ff6a56f2936a1111b30bae210df3ff374699027","tarball":"https://registry.npmjs.org/@0xlimao/n8n-nodes-ethereum/-/n8n-nodes-ethereum-1.0.1.tgz","fileCount":215,"unpackedSize":1794417,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@0xlimao%2fn8n-nodes-ethereum@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIHua2OYq6p9HACfxio9JHZnOdInnqP38reU/Y9nDVE3uAiEApjekUQBTglmi6qY1BH7TupZyEnh03Vpg7uWwz7CxDYc="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:4157d6c5-b15b-47d8-af2f-5042090b412c"}},"directories":{},"maintainers":[{"name":"flyinglimao","email":"hi@limaois.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/n8n-nodes-ethereum_1.0.1_1767836803037_0.8129018894892359"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-24T04:20:23.906Z","modified":"2026-01-08T01:46:43.674Z","0.1.1":"2025-12-24T04:20:24.215Z","1.0.0":"2026-01-06T03:24:50.514Z","1.0.1":"2026-01-08T01:46:43.248Z"},"bugs":{"url":"https://github.com/flyinglimao/n8n-ethereum/issues"},"license":"MIT","homepage":"https://github.com/flyinglimao/n8n-ethereum#readme","keywords":["n8n","n8n-community-node-package","ethereum","blockchain","viem","web3"],"repository":{"type":"git","url":"git+https://github.com/flyinglimao/n8n-ethereum.git"},"description":"Comprehensive Ethereum blockchain integration for n8n with unified node structure using viem","maintainers":[{"name":"flyinglimao","email":"hi@limaois.me"}],"readme":"# n8n-nodes-ethereum\n\n[![npm version](https://badge.fury.io/js/%40flyinglimao%2Fn8n-nodes-ethereum.svg)](https://www.npmjs.com/package/@0xlimao/n8n-nodes-ethereum)\n\nComprehensive Ethereum blockchain integration for n8n with a unified node structure using viem. This community node package provides two powerful nodes: **Ethereum** (regular node) and **Ethereum Trigger** (trigger node) for interacting with Ethereum and EVM-compatible blockchains.\n\n## ⚠️ Disclaimer\n\n> **WARNING**: This package is currently in early development and **has not been thoroughly tested or audited**. Please use at your own risk.\n>\n> - ❌ Not production-ready\n> - ⚠️ May contain bugs or security vulnerabilities\n> - 🔍 Always verify transaction details before execution\n> - 💰 Test with small amounts first\n> - 🛡️ Conduct your own security review\n>\n> **By using this package, you acknowledge these risks and agree that you are solely responsible for any losses or damages.**\n\n## Features\n\n- ✨ **Unified Node Structure**: Single Ethereum node with Resource/Operation pattern for cleaner UX\n- 🔐 **Secure Credentials**: Separate RPC and Account credentials with optional wallet for read operations\n- 🔄 **10 Resource Types**: Account, Block, Transaction, Contract, ERC20, ERC721, ERC1155, ENS, Gas, Utils\n- ⚡ **Trigger Support**: Monitor new blocks, contract events, and transactions in real-time\n- 🌐 **Multi-Chain**: Supports Ethereum, Polygon, BSC, Arbitrum, Optimism, Avalanche, Fantom, Base, and custom networks\n- 🪙 **Complete Token Standards**: ERC20, ERC721, ERC1155 with automatic ABI handling\n- 📦 **Built with viem**: Modern, type-safe TypeScript library for Ethereum interactions\n\n## Installation\n\n```bash\nnpm install @0xlimao/n8n-nodes-ethereum\n```\n\n## Credentials\n\n### Ethereum RPC\n\nConnection details for the Ethereum node.\n\n**Fields:**\n\n- **Chain**: Select from supported chains (Ethereum, Polygon, BSC, etc.) or choose Custom\n- **RPC URL** (required): HTTP(S) or WebSocket endpoint (e.g., `https://mainnet.infura.io/v3/YOUR-API-KEY`)\n- **Custom Headers** (optional): JSON object for API authentication (e.g., `{\"Authorization\": \"Bearer token\"}`)\n\n### Ethereum Account\n\nWallet credentials for signing transactions. **Optional** for read operations.\n\n**Fields:**\n\n- **Private Key** (optional): 64-character hex private key (with or without 0x prefix)\n- **Mnemonic Phrase** (optional): 12 or 24-word seed phrase\n- **Derivation Path**: BIP-44 path for deriving account from mnemonic (default: `m/44'/60'/0'/0/0`)\n- **Passphrase**: Optional passphrase for BIP-39 mnemonic\n\n**Note**: At least one of Private Key or Mnemonic is required for write operations. Read operations don't need this credential.\n\n## Triggers\n\n### Event Trigger\n\nActivates workflow when a smart contract emits specific events.\n\n**Features:**\n\n- Monitor all contracts (no address required)\n- Support multiple contract addresses\n- Support multiple event types\n\n### Block Trigger\n\nTriggers when a new block is created on the blockchain.\n\n### Transaction Trigger\n\nTriggers when transactions occur at specified addresses.\n\n**Features:**\n\n- Monitor specific addresses\n- Filter for incoming transactions only\n- Filter for outgoing transactions only\n- Monitor both incoming and outgoing (default)\n\n## Nodes\n\n### Account Operations\n\n- **Get Balance**: Retrieve native token balance with formatting options (wei/gwei/ether)\n- **Get Transaction Count**: Get account nonce for transaction sequencing\n- **Get Code**: Check if address is a smart contract\n\n### Block Operations\n\n- **Get Block**: Retrieve detailed block information with optional full transactions\n- **Get Block Number**: Get current blockchain height with caching support\n\n### Transaction Operations\n\n- **Send Transaction**: Send native tokens with EIP-1559 gas support\n- **Get Transaction**: Retrieve transaction details by hash\n- **Get Transaction Receipt**: Get transaction receipt with event logs\n- **Wait For Transaction**: Wait for confirmations with configurable timeout\n- **Estimate Gas**: Estimate gas requirements with buffer\n\n### Contract Operations\n\n- **Read Contract**: Call view/pure functions with dynamic parameter inputs\n- **Write Contract**: Execute state-changing contract functions\n- **Deploy Contract**: Deploy smart contracts with constructor arguments\n- **Multicall**: Batch multiple read operations efficiently\n- **Simulate Contract**: Test contract calls without sending transactions\n- **Get Logs**: Query historical event logs with automatic decoding\n\n### ERC20 Token Standard (9 nodes)\n\n- **Get Balance**: Token balance with automatic decimal formatting\n- **Transfer**: Send tokens with decimal conversion\n- **Approve**: Approve spending with unlimited option\n- **Transfer From**: Transfer using allowance\n- **Get Allowance**: Check approved amounts\n- **Get Total Supply**: Query total token supply\n- **Get Decimals**: Retrieve token decimals\n- **Get Name**: Get token name\n- **Get Symbol**: Get token symbol\n\n### ERC721 NFT Standard (9 nodes)\n\n- **Get Balance**: NFT count for address\n- **Owner Of**: Get owner of specific token ID\n- **Transfer From**: Transfer NFT ownership\n- **Safe Transfer From**: Safe transfer with receiver validation\n- **Approve**: Approve NFT transfer\n- **Set Approval For All**: Approve operator for all NFTs\n- **Get Approved**: Get approved address for token\n- **Is Approved For All**: Check operator approval status\n- **Token URI**: Get token metadata URI\n\n### ERC1155 Multi-Token Standard (7 nodes)\n\n- **Balance Of**: Get balance for specific token ID\n- **Balance Of Batch**: Batch balance queries\n- **Safe Transfer From**: Safe transfer single token type\n- **Safe Batch Transfer From**: Batch transfer multiple token types\n- **Set Approval For All**: Approve operator\n- **Is Approved For All**: Check operator approval\n- **URI**: Get token metadata URI\n\n### Gas Operations\n\n- **Get Gas Price**: Retrieve current gas price (legacy)\n- **Get Fee History**: Analyze historical fees for EIP-1559 optimization\n- **Estimate Max Priority Fee**: Estimate priority fee for transactions\n\n### ENS Operations\n\n- **Get ENS Address**: Resolve ENS name to Ethereum address\n- **Get ENS Name**: Reverse resolve address to ENS name\n- **Get ENS Avatar**: Retrieve avatar URI for ENS name\n- **Get ENS Text**: Get text records (email, twitter, url, etc.)\n- **Get ENS Resolver**: Get resolver contract address\n\n### Signature Operations\n\n- **Sign Message**: Personal message signing with wallet\n- **Sign Typed Data**: EIP-712 structured data signing\n- **Verify Message**: Verify personal message signatures\n- **Verify Typed Data**: Verify EIP-712 signatures\n- **Recover Address**: Recover signer address from signature\n- **Hash Message**: Keccak256 hash of messages\n- **Hash Typed Data**: Hash typed data for signing\n\n### Utility Operations\n\n- **Format Units**: Convert wei to human-readable format\n- **Parse Units**: Convert human-readable to wei\n- **Get Chain ID**: Retrieve current chain identifier\n- **Validate Address**: Validate and checksum Ethereum addresses\n- **Encode Function Data**: Encode function call data from ABI\n- **Decode Function Data**: Decode function call data using ABI\n- **Encode Event Topics**: Encode event topics for log filtering\n- **Decode Event Log**: Decode event log data using ABI\n- **Get Contract Address**: Calculate CREATE/CREATE2 deployment addresses\n\n### Advanced Operations\n\n- **Get Storage At**: Read raw storage slots from contracts\n- **Call**: Make raw contract calls with custom data\n- **Get Proof**: Generate Merkle proofs for account state and storage\n\n## Usage Examples\n\n### Monitor Contract Events and Send Notifications\n\n```\n[Event Trigger] → [Process Data] → [Send Notification]\n```\n\n### Periodically Read Contract State\n\n```\n[Schedule Trigger] → [Read Contract] → [Store Data]\n```\n\n### Execute Contract Operation and Wait for Confirmation\n\n```\n[Trigger] → [Write Contract] → [Wait Transaction] → [Post-processing]\n```\n\n## Supported Networks\n\nThe package includes pre-configured support for 18 major Ethereum-compatible networks:\n\n**Ethereum:**\n\n- Mainnet\n- Sepolia (testnet)\n- Goerli (testnet)\n- Holesky (testnet)\n\n**Layer 2 & Scaling:**\n\n- Arbitrum One\n- Arbitrum Sepolia\n- Optimism\n- Optimism Sepolia\n- Base\n- Base Sepolia\n\n**Sidechains & Alternative L1s:**\n\n- Polygon (Matic)\n- Polygon Amoy (testnet)\n- BNB Smart Chain (BSC)\n- BSC Testnet\n- Avalanche C-Chain\n- Avalanche Fuji (testnet)\n\n**Additional Networks:**\n\n- Gnosis Chain\n- Celo\n\nYou can also add custom networks by configuring the RPC endpoint directly.\n\n## License\n\nMIT License\n\n---\n\n## Contributing\n\nIssues and Pull Requests are welcome!\n\n## Related Links\n\n- [n8n Official Website](https://n8n.io)\n- [Ethereum Developer Documentation](https://ethereum.org/developers)\n","readmeFilename":"README.md"}