Clients page is outdated
faraggi opened this issue · 2 comments
faraggi commented
The page https://github.com/ethereum/wiki/wiki/Clients,-tools,-dapp-browsers,-wallets-and-other-projects is outdated and is an important landing page because its the top result in Google when searching for ethereum clients.
Here is a proposal for the page:
#### Contents
- [Ethereum Clients](#/ethereum-clients)
- [Other projects, tools, etc.](#/other-projects-tools-etc)
## Ethereum Clients
Ethereum clients run the Ethereum Virtual Machine. Some of those clients are:
### Official reference implementations (CLI)
There are currently three reference implementations available, as you already highlighted:
* `Aleth` - C++ client: [https://github.com/ethereum/aleth](https://github.com/ethereum/aleth). (It was formerly known as `cpp-ethereum`: [https://github.com/ethereum/webthree-umbrella](https://github.com/ethereum/webthree-umbrella))
* `Geth` - Golang client of the `go-ethereum` project: [https://github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum)
* `Trinity` - Python client: [https://github.com/ethereum/trinity](https://github.com/ethereum/trinity)
### Third party implementations (CLI)
Non-official clients implementing the yellow paper specification are:
* `EthereumJ` - Java client by the ether.camp team: [https://github.com/ethereum/ethereumj](https://github.com/ethereum/ethereumj)
* `EthereumJS VM` - Javascript Ethereum Virtual Machine: [https://github.com/ethereumjs/ethereumjs-vm](https://github.com/ethereumjs/ethereumjs-vm)
* `Hyperledger Besu` - Java client by Hyperledger: [https://github.com/hyperledger/besu](https://github.com/hyperledger/besu) (ex-Pantheon)
* `Mana` - Elixir by POA Network - [https://github.com/mana-ethereum/mana](https://github.com/mana-ethereum/mana)
* `Minimal` - Go client by umbracle - [https://github.com/umbracle/minimal](https://github.com/umbracle/minimal)
* `Nethermind` - C# / .NET by Nethermind
* `Parity Ethereum` - Rust client by Parity Technologies : [https://www.parity.io/ethereum/](https://www.parity.io/ethereum/)
### Third party implementations (GUI)
Non-official clients with a graphical user interface are:
* `Etherwall`, a Qt client like the good ol' bitcoin clients: [https://github.com/almindor/etherwall](https://github.com/almindor/etherwall)
### Deprecated or abandoned projects:
Official reference implementations (CLI):
* `Pyethapp` - (`pyethapp has been deprecated`) Python client of the `pyethereum` project: [https://github.com/ethereum/pyethapp](https://github.com/ethereum/pyethapp)
Graphical clients:
* `AlethZero` (`Alethzero has been deprecated`): [https://github.com/ethereum/alethzero](https://github.com/ethereum/alethzero)
* `Mist Browser` (`Mist and Ethereum Wallet have been deprecated`): [https://github.com/ethereum/mist](https://github.com/ethereum/mist)
Third Party clients:
* `ethereumH` - Haskell client from consensys, but it's not developed anymore: [https://github.com/jamshidh/ethereum-client-haskell](https://github.com/jamshidh/ethereum-client-haskell) (project has not been updated in a long time)
* `node-blockchain-server` - simple Javascript server: [https://github.com/ethereumjs/node-blockchain-server](https://github.com/ethereumjs/node-blockchain-server) (project has not been updated in a long time)
* `ruby-ethereum` - Ruby client: [https://github.com/janx/ruby-ethereum](https://github.com/janx/ruby-ethereum) (project has not been updated in a long time)
NOTE: all clients are listed in alphabetical order.
## Other projects, tools, etc.
* [sharding](https://github.com/ethereum/wiki/wiki/Sharding-introduction-R&D-compendium)
* [Casper Proof-of-Stake](https://github.com/ethereum/wiki/wiki/Casper-Proof-of-Stake-compendium)
* [smart contract languages](https://github.com/ethereum/wiki/wiki/%C3%90App-Development):
* Solidity: [repo](https://github.com/ethereum/solidity), join the chat at [https://gitter.im/ethereum/solidity](https://gitter.im/ethereum/solidity), [docs](https://solidity.readthedocs.org/en/latest/), see the above link for more resources.
* Vyper: [repo](https://github.com/ethereum/vyper)
* LLL and other deprecated languages
* [Mist](https://github.com/ethereum/mist), join the chat at [https://gitter.im/ethereum/mist](https://gitter.im/ethereum/mist), [issues](https://github.com/ethereum/mist/issues). Note that as of 31 May 2018, Mist isn't really user-ready yet, so until it has a stable release, using alternatives like [MyCrypto](https://www.mycrypto.com/) or [MyEtherWallet](https://www.myetherwallet.com/) is recommended instead, unless you're happy to be a beta tester.
* web3 or JSON.RPC: [repo](https://github.com/ethereum/web3.js), [issues](https://github.com/ethereum/web3.js/issues)
* Organization projects include:
* [https://github.com/ethereum](https://github.com/ethereum),
* [https://github.com/paritytech](https://github.com/paritytech), and
* [https://github.com/ethereumjs](https://github.com/ethereumjs).
More information here: https://ethereum.org/developers/#smart-contract-languages
## More Information
For additional developer information, see [ethereum.org's Developer Portal](https://ethereum.org/developers/#getting-started).
faraggi commented
Most information sourced from this updated stackexchange Q/A: https://ethereum.stackexchange.com/questions/269/what-exactly-is-an-ethereum-client-and-what-clients-are-there/279#279
ChrisChinchilla commented
Thanks @faraggi updated!