An ethereum blockchain scanner that allows you to find transactions associated to an address. This gives you the capability to search the entire chain for transactions or just part of the chain. This then outputs all of the transactions to csv containing all of the pertinent block/transaction information. Think of it as a very limited etherscan.
To compile the usable binary you can run:
$ go build -o ./bin/eth-scanner ./cmd/eth-scanner
You can now execute the binary:
$ ./bin/eth-scanner -h
Currently with 25 block workers enables and with the scanner using an infura node, the scanner can process ~125k blocks per hour. One way that you can speed up the scanning is to connect to a fully synced node locally. Since the network latency will not be a major bottleneck when attempting to scan large portions of the blockchain.
One major drawback to using this over etherscan.io is the amount of time that it
takes to scan since it will take O(n)
request to scan all blocks specified. With
the mainnet at 6M+ blocks in order to scan
One major improvement that is being considered is the use of allowing a sync command to sync all blocks to a relational database which can then be used to easily query addresses and transactions.
Also dockerizing the environment would substantially help in creating database(s) and checking the status of the scanner. The specific of which are still in debate.
Increase sync/scan times would be extremely beneficial in the usefulness of this tool. Having to wait hours to find transactions is not at all helpful when compared to other existing tools such as etherscan.
GPL 3.0