Ethereum's Github has ethereumjs-lib. It appears to be a collection of modules, but is it also a client like Geth? If so, how can one run this Javascript client?

1 Answer 1


Yes, there are 3 official clients in Golang, C++ and Python. And there are 4 unofficial clients in Java, Haskell, JavaScript and most recently Rust.

To answer your question, the full node client implementation in JavaScript is the node-blockchain-server of the ethereumjs project.

The node-blockchain-server aims to provide a full Ethereum node implementation. It is in a pretty rough state at the moment, but at least can download the blockchain.

In oposite to other client implementations, for JavaScript you need to add a couple of libraries to get a fullstack client. Check out keythereum for managing keys and ethereumjs-tx for creating transactions with them.

The full list of libraries (23) in the ethereumjs project can be found on their homepage.

  • node-blockchain-server says "It doesn't do state transitions". Not clear what that means. Also, can you send it transactions?
    – eth
    Feb 10, 2016 at 8:58
  • No, updated my answer.
    – q9f
    Feb 10, 2016 at 9:02
  • Looks like the answer to this is "not yet". If/when mentioning "need to add a couple libraries", I think it would be better to describe that more ;)
    – eth
    Feb 12, 2016 at 5:31
  • Can you scan the ethereum blockchain with these?
    – Shamoon
    May 8, 2018 at 15:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.