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 Answers
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 '16 at 08:58
-
No, updated my answer. – q9f Feb 10 '16 at 09: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 '16 at 05:31
-
Can you scan the ethereum blockchain with these? – Shamoon May 08 '18 at 15:02