Ethereum-org-website: Create an "Ethereum nodes/clients" page

Created on 17 Apr 2020  Â·  27Comments  Â·  Source: ethereum/ethereum-org-website

Is your feature request related to a problem? Please describe.

Current information on the site is pretty limited:

Why improve it?

  • There's significant search volume for "ethereum node" related terms (~15K queries/month)
  • It should be easy for visitors to find info on

    • What is an Ethereum node? High level overview of how one fits into the big picture

    • The different ETH clients available & how to follow progress/contribute to each project

    • How to run a node

    • The state of the network (# of nodes online, client diversity)

    • Different kinds of nodes (e.g. light client vs. full node)?

Describe the solution you'd like

A dedicated page to Ethereum nodes

Describe alternatives you've considered

Build off existing sections

Additional context

Some resources to consider

In Progress Proposal Content Feature

Most helpful comment

I also see a lot of questions regarding state size, dag size, time to sync a full node and most commonly used parameters for a node. Maybe this could also be part of this site.

All 27 comments

I also see a lot of questions regarding state size, dag size, time to sync a full node and most commonly used parameters for a node. Maybe this could also be part of this site.

I am thrilled to see this issue! I see this as a crucial in questions of client diversity and network grow.

So I was thinking how should high level content of the page look like.

  1. What's a node?

    1. Intro description

    2. Visualization [Tomo could make this]

  2. Why should I run a node?

    1. Benefits for an individual, privacy, trustless, self sufficiency / web3

    2. Run a service (examples / infura / ...)

    3. Provide infrastructure (VIP node / community space (trusted info))

  3. Which client to pick?

    1. Geth

    2. OpenEthereum

    3. Turbo-Geth

    4. Besu

    5. Nethermind

      Short description and benefits of each client and maybe also include info about Grid.

I could help with content, copy for each section but I am not so confident with webdesign/UX.

@taxmeifyoucan great! Thanks for volunteering to help. Please feel free to go ahead & draft the content for this page & share a public doc here for folks to give feedback on.

Here are some ideas for info / data points to include for each client:

  • Hardware requirements
  • Supported Operating Systems

    • Linux

    • Mac

    • Windows

    • DappNode

    • ...

  • Supported Networks

    • Mainnet

    • Görli

    • Ropsten

    • ...

  • Supported Sync strategies

    • Full / Archive

    • Fast

    • Beam

    • Light

  • Maturity (e.g stable, beta, alpha but could also be worth writing some free text that takes into account how widely the client is being used in practice)
  • Why would you want to choose this client

Hey @taxmeifyoucan - any update on a draft for this? 😄

Thanks!

The draft was stuck with me :D Sorry for that, @taxmeifyoucan had it for a while already and will share it with others soon.

@samajammin I am sorry it's taking so long! Here is the first version for comments and gathering ideas. More content will be added but it also opens discussion about design, linking pages etc.

Cool, I added Trinity to the table.

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days

Short update: I am working with Tomo on visuals for the page - visualization of the network, dapps using the client and also how the whole page should look like. I am also preparing benchmarks of Ethereum clients which results could be useful info on the page. The hackmd doc is still open for edits and feedback.

@taxmeifyoucan cool! Thanks for the update. We should circle up with @ryancreatescopy, our new content designer, on this. We've been planning out the site structure on how to expand our site content (with pages like this) & I think it'd be valuable for him to weigh in on this.

Thank you for letting me know @samajammin! I'll get in touch with @ryancreatescopy and finalize the content

@taxmeifyoucan this looks great. As @samajammin mentioned, we're currently redesigning the structure of our developers section and massively expanding its scope. This page is exactly the type of content we need to help create a better experience for new developers and those who are technologically curious. Feel free to expand this content if you think extra pages are necessary (you mentioned that you were preparing benchmarks etc) – we'll have the space for multiple pages if it becomes a better reading experience. Consider this approach if you think this is more detail that not everyone would need.

I also have a template that outlines the structure of pages we'll be creating. If you can make your content fit this structure (I think it pretty much does already!) it'd be the best next steps: https://www.notion.so/efdn/Writer-template-4b40d196cde7422ca6a2091de33550bd

I think we just need a short tl;dr intro and some prerequisites added to the content you've already prepared.

Thanks for doing this and if you'd like to work with us on any other content, please let us know! 💪

FYI @ryancreatescopy assigning this to you to include as part of #1396

Solved in #1396 - you can view the live page here: https://ethereum.org/en/developers/docs/nodes-and-clients/

@taxmeifyoucan thank you so much for your contributions on this! We made some slight tweaks to the page but feel free to open a PR if you'd ever like to make edits or additions! Cheers.

@all-contributors please add @taxmeifyoucan for content.

@samajammin

I've put up a pull request to add @taxmeifyoucan! :tada:

@all-contributors please add @JosefJ for content.

@samajammin

I've put up a pull request to add @JosefJ! :tada:

@all-contributores please add @MariusVanDerWijden for ideas.

@all-contributors please add @MariusVanDerWijden for ideas.

@samajammin

I've put up a pull request to add @MariusVanDerWijden! :tada:

@all-contributors please add @cburgdorf for ideas.

@samajammin

I've put up a pull request to add @cburgdorf! :tada:

@MariusVanDerWijden @cburgdorf FYI - we didn't end up including all of your content ideas (e.g. state size, dag size, time to sync a full node and most commonly used parameters for a node, maturity & "why" of each client) for the first version but we'd welcome any PRs if you'd like them included!

Thanks @samajammin! I might add some more info about clients via PR. I also start to work on another page I signed up for and open a PR for feedbacks.

@taxmeifyoucan awesome! I've created issues for 2 related subpages:

Feel free to comment on either/both of those issues & I can then assign you.

Also, if anyone is interested in covering different topics about nodes/clients (e.g. how to benchmark & tweak performance), we'd welcome ideas via issues!

Was this page helpful?
0 / 5 - 0 ratings