{"id":19068123,"url":"https://github.com/dvisacker/eth-navigator","last_synced_at":"2025-10-04T12:07:47.440Z","repository":{"id":253870020,"uuid":"843368235","full_name":"Dvisacker/eth-navigator","owner":"Dvisacker","description":"An EVM command line","archived":false,"fork":false,"pushed_at":"2024-08-20T01:11:49.000Z","size":141,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-02T07:11:11.112Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Dvisacker.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-16T11:10:24.000Z","updated_at":"2024-08-20T01:11:53.000Z","dependencies_parsed_at":null,"dependency_job_id":"b74149c8-8771-4e2d-ac17-899d2c10fa07","html_url":"https://github.com/Dvisacker/eth-navigator","commit_stats":null,"previous_names":["dvisacker/eth-navigator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Dvisacker/eth-navigator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dvisacker%2Feth-navigator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dvisacker%2Feth-navigator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dvisacker%2Feth-navigator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dvisacker%2Feth-navigator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Dvisacker","download_url":"https://codeload.github.com/Dvisacker/eth-navigator/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Dvisacker%2Feth-navigator/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260769857,"owners_count":23060189,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T01:05:49.925Z","updated_at":"2025-10-04T12:07:47.422Z","avatar_url":"https://github.com/Dvisacker.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# eth-manager - EVM Chain Manager Tool\n\neth-manager is a command-line tool for interacting with Ethereum and Ethereum-compatible blockchains. It provides various functionalities such as querying blockchain data, subscribing to events sending/bridging assets, generating contract bindings, abi or source code. To avoid errors, tokens and wallets must be whitelisted. \n\n## Installation\n\n1. Ensure you have Rust and Cargo installed on your system.\n2. Clone this repository.\n3. Run the following command to build and install eth-manager:\n\n```\nmake install\n```\n\nMake sure `/usr/local/bin` is in your PATH.\n\n## Usage\n\nTo use eth-manager, run the following command:\n\n```\neth-manager \u003cCOMMAND\u003e [OPTIONS]\n```\n\nReplace `\u003cCOMMAND\u003e` with one of the available commands listed below, and `[OPTIONS]` with the appropriate options for that command.\n\n## Available Commands and Examples\n\n### EVM Interface Commands\n\n1. Get Block Number\n```\neth-manager get-block-number --network ethereum\n```\n\n2. Subscribe to Blocks\n```\neth-manager subscribe-blocks --network ethereum\n```\n\n3. Subscribe to Pending Transactions\n```\neth-manager subscribe-pending-transactions --network ethereum\n```\n\n4. Get Gas Price\n```\neth-manager get-gas-price --network ethereum\n```\n\n5. Get Balance\n```\neth-manager get-balance --address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --network ethereum\n```\n\n6. Get Nonce\n```\neth-manager get-nonce --address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --network ethereum\n```\n\n7. Get Block Details\n```\neth-manager get-block-details --block-number 12345678 --network ethereum\n```\n\n8. Subscribe to Logs\n```\neth-manager subscribe-logs --network ethereum\n```\n\n9. Get Transaction Details\n```\neth-manager get-tx-details --tx-hash 0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef --network ethereum\n```\n\n10. Generate Contract Bindings\n```\neth-manager generate-contract-bindings --contract-address 0x6B175474E89094C44Da98b954EedeAC495271d0F --contract-name DAI --network ethereum\n```\n\n11. Generate Source Code\n```\neth-manager generate-source-code --contract-address 0x6B175474E89094C44Da98b954EedeAC495271d0F --contract-name DAI --network ethereum\n```\n\n12. Get ERC20 Balance\n```\neth-manager get-erc20-balance --wallet-address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --token-address 0x6B175474E89094C44Da98b954EedeAC495271d0F --network ethereum\n```\n\n13. Wrap ETH\n```\neth-manager wrap-eth --amount 1000000000000000000 --network ethereum\n```\n\n14. Send ETH\n```\neth-manager send-eth --to-address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --amount 1000000000000000000 --network ethereum\n```\n\n15. Send ERC20\n```\neth-manager send-erc20 --token-address 0x6B175474E89094C44Da98b954EedeAC495271d0F --to-address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --amount 1000000000000000000 --network ethereum\n```\n\n16. Get Transactions\n```\neth-manager get-transactions --address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --network ethereum\n```\n\n17. Swap Tokens on Uniswap V3\n```\neth-manager swap-tokens-uniswap-v3 --token-in 0x6B175474E89094C44Da98b954EedeAC495271d0F --token-out 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 --amount-in 1000000000000000000 --amount-out-minimum 1000000000000000000 --recipient 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --network ethereum\n```\n\n### LI.FI Bridge Commands\n\n18. Get Supported Chains\n```\neth-manager get-supported-chains\n```\n\n19. Get Known Tokens\n```\neth-manager get-known-tokens --chain ethereum\n```\n\n20. Request Routes\n```\neth-manager request-routes --from-chain-id 1 --to-chain-id 137 --from-token-address 0x6B175474E89094C44Da98b954EedeAC495271d0F --to-token-address 0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063 --from-amount 1000000000000000000\n```\n\n21. Request Quote\n```\neth-manager request-quote --from-chain ethereum --to-chain polygon --from-token DAI --to-token DAI --from-amount 1000000000000000000 --from-address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --to-address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e\n```\n\n22. Get Transfer Status\n```\neth-manager get-transfer-status --tx-hash 0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef --from-chain ethereum --to-chain polygon\n```\n\n23. Get Connections\n```\neth-manager get-connections --from-chain ethereum --to-chain polygon --from-token DAI --to-token MATIC --from-amount 1000000000000000000 --allow-exchanges true\n```\n\n### Whitelist Management Commands\n\n24. Add Wallet to Whitelist\n```\neth-manager add-wallet-to-whitelist --address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e --name \"My Wallet\"\n```\n\n25. Remove Wallet from Whitelist\n```\neth-manager remove-wallet-from-whitelist --address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e\n```\n\n26. Add Token to Whitelist\n```\neth-manager add-token-to-whitelist --address 0x6B175474E89094C44Da98b954EedeAC495271d0F --name \"DAI\" --chain ethereum\n```\n\n27. Remove Token from Whitelist\n```\neth-manager remove-token-from-whitelist --address 0x6B175474E89094C44Da98b954EedeAC495271d0F --chain ethereum\n```\n\n28. Show Whitelist\n```\neth-manager show-whitelist\n```\n\n## Roadmap\n\n- [x] Basic EVM interactions (get balance, send transactions, etc.)\n- [x] ERC20 Send Tokens\n- [x] ERC20 Get Balance\n- [x] Block and transaction monitoring\n- [x] Contract binding generation\n- [x] Whitelist management for wallets and tokens\n- [ ] Aave Supply/Borrow\n- [ ] Uniswap Swap\n- [ ] Uniswap Provide Liquidity\n- [ ] Lifi integration\n- [ ] Aave Flash Loan\n- [ ] CoWSwap Limit Order\n- [ ] Improve error handling\n- [ ] Interactive confirmation when sending transaction\n- [ ] Ledger support\n- [ ] Debug tranasction list\n- [ ] Add tests\n\nThis roadmap is subject to change as the project evolves. Contributions and suggestions for new features are always welcome!\n\n## Notes\n\n- Replace placeholder addresses, transaction hashes, and other values with actual data when using these commands.\n- Some commands may require additional setup, such as setting environment variables for API keys or wallet private keys.\n- The `--network` option defaults to \"ethereum\" for most commands if not specified.\n- The whitelist is stored in a file named `whitelist.json` in the project root directory.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdvisacker%2Feth-navigator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdvisacker%2Feth-navigator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdvisacker%2Feth-navigator/lists"}