{"id":13789968,"url":"https://github.com/protofire/eth-cli","last_synced_at":"2025-07-03T02:07:29.287Z","repository":{"id":37934056,"uuid":"114293374","full_name":"protofire/eth-cli","owner":"protofire","description":"CLI swiss army knife for Ethereum developers","archived":false,"fork":false,"pushed_at":"2023-01-03T23:37:48.000Z","size":11857,"stargazers_count":240,"open_issues_count":44,"forks_count":42,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-06-13T12:54:36.562Z","etag":null,"topics":["blockchain","cli","ethereum"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/eth-cli","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/protofire.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-12-14T20:27:35.000Z","updated_at":"2025-04-25T02:55:08.000Z","dependencies_parsed_at":"2023-02-01T14:01:11.309Z","dependency_job_id":null,"html_url":"https://github.com/protofire/eth-cli","commit_stats":null,"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/protofire/eth-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/protofire%2Feth-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/protofire%2Feth-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/protofire%2Feth-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/protofire%2Feth-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/protofire","download_url":"https://codeload.github.com/protofire/eth-cli/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/protofire%2Feth-cli/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263245316,"owners_count":23436515,"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":["blockchain","cli","ethereum"],"created_at":"2024-08-03T22:00:35.329Z","updated_at":"2025-07-03T02:07:29.262Z","avatar_url":"https://github.com/protofire.png","language":"TypeScript","funding_links":[],"categories":["Roadmap","Tools","TypeScript","Command Line tools"],"sub_categories":["Development tools","Text"],"readme":"# eth-cli\n\nA CLI swiss army knife for Ethereum developers\n\n[![Donate with Ethereum](https://en.cryptobadges.io/badge/micro/0xe8cdf02efd8ab0a490d7b2cb13553389c9bc932e)](https://en.cryptobadges.io/donate/0xe8cdf02efd8ab0a490d7b2cb13553389c9bc932e)\n\n[![Build Status](https://travis-ci.org/protofire/eth-cli.svg?branch=master)](https://travis-ci.org/protofire/eth-cli)\n[![NPM version](https://badge.fury.io/js/eth-cli.svg)](https://npmjs.org/package/eth-cli)\n[![MIT licensed](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/protofire/eth-cli/master/LICENSE)\n[![dependencies Status](https://david-dm.org/protofire/eth-cli/status.svg)](https://david-dm.org/protofire/eth-cli)\n[![devDependencies Status](https://david-dm.org/protofire/eth-cli/dev-status.svg)](https://david-dm.org/protofire/eth-cli?type=dev)\n\n## Why use it?\n\n`eth-cli` allows you to fetch data from the blockchain, start an interactive REPL connected to some node, call methods on deployed contracts, and more, all at the comfort of your command line. Checkout the [examples](#examples) below for more information or check the [full list of commands](docs/COMMANDS.md).\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n## Table of Contents\n\n- [Installation](#installation)\n- [Demo](#demo)\n- [Examples](#examples)\n  - [Fetch data from the blockchain](#fetch-data-from-the-blockchain)\n  - [Start an interactive REPL connected to some node](#start-an-interactive-repl-connected-to-some-node)\n  - [Call methods on deployed contracts](#call-methods-on-deployed-contracts)\n- [Autocomplete](#autocomplete)\n- [Init file](#init-file)\n- [Sibling projects](#sibling-projects)\n- [Back us](#back-us)\n- [Credits](#credits)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n## Installation\n\nInstall it globally:\n\n```shell\nnpm install -g eth-cli\n```\n\nYou can also try it with `npx`:\n\n```\n$ npx eth-cli repl --mainnet erc721@0x06012c8cf97bead5deae237070f9587f8e7a266d\n\u003e erc721.methods.name().call()\n'CryptoKitties'\n```\n\n## Demo\n\nCheck [this screencast](https://www.youtube.com/watch?v=7tEUtg9DKTo) to see it in action.\n\n## Examples\n\nThere are a lot of things that you can do with `eth-cli`, and we keep adding more. These are some of our favorites:\n\n### Fetch data from the blockchain\n\nUse commands like `block:number`, `tx:get` and `address:balance` to get information from the blockchain.\n\n![Fetch data from the blockchain](img/fetching-data.gif)\n\n\n[more examples](/example.md)\n\n## Autocomplete\n\n`eth-cli` supports some basic autocompletion, generated with [`completely`](https://github.com/fvictorio/completely).\n\nThe [completion](completion) directory has a bash completion script (`eth-completion.bash`) and a zsh completion script\n(`_eth`). If you use bash, download the script and source it in your bashrc. If you use zsh, download the script and put\nit in some directory in your [`fpath`](https://unix.stackexchange.com/questions/33255/how-to-define-and-load-your-own-shell-function-in-zsh).\n\n## Init file\n\nIf you want to have some helper variables or functions in your REPL, you can create an init file that will be loaded\nevery time you use `eth repl`. Just create a file called `.eth_cli_repl_init.js` in your home directory. For example, if\nyou create it with some content like:\n\n```js\nmodule.exports = function(context) {\n  context.toWei = x =\u003e context.web3.utils.toWei(x.toString())\n  context.fromWei = x =\u003e context.web3.utils.fromWei(x.toString())\n}\n```\n\nyou will have `toWei` and `fromWei` as global functions in the REPL.\n\n\n## Sibling projects\n\n- [Solhint](https://github.com/protofire/solhint): A linter for the Solidity language.\n\n## Back us\n\neth-cli is free to use and open-sourced. If you value our effort and feel like helping us to keep pushing this tool forward, you can send us a small donation. We'll highly appreciate it :)\n\n[![Donate with Ethereum](https://en.cryptobadges.io/badge/micro/0xe8cdf02efd8ab0a490d7b2cb13553389c9bc932e)](https://en.cryptobadges.io/donate/0xe8cdf02efd8ab0a490d7b2cb13553389c9bc932e)\n\n## Credits\n\nTable of Contents *generated with [DocToc](https://github.com/thlorenz/doctoc)*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprotofire%2Feth-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprotofire%2Feth-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprotofire%2Feth-cli/lists"}