Prysm is an Ethereum proof-of-stake client written in Go. You can use Prysm to participate in Ethereum's decentralized economy by running a node and, if you have 32 ETH to stake, a validator. If you're new to Ethereum, you may enjoy our beginner-friendly Nodes and networks explainer.
The following table of contents provides a descriptive overview of Prysm's documentation:
New Prysm users can follow this guidance to get started with Prysm.
Current Prysm users can follow this guidance to prepare their nodes and validators for The Merge, an ongoing event that transitions Ethereum from proof-of-work to proof-of-stake.
Learn how to minimize risk as a validator. The guidelines provided in this document are client-agnostic (they apply to Prysm and other clients, too).
Learn how to configure Prysm's beacon node client, validator client, and more through its command-line interface.
Review common troubleshooting scenarios and solutions.
Review frequently asked questions and answers.
This section contains alternatives to the script-based installation guidance provided within our Quickstart.
Learn how to install Prysm using preconfigured Docker images that ship with every Prysm release.
Learn how to build Prysm from source using Bazel.
This section contains procedural documentation that walks you through specific tasks related to Prysm.
Learn how to specify a Fee Recipient wallet address that allows validators to earn transaction fee tips post-Merge.
After The Merge, Prysm will need to securely connect to a local execution node. This how-to shows you how to form this secure connection using a JWT token.
Learn how to keep Prysm updated, how to downgrade Prysm, and how to use release candidates.
Syncing from a checkpoint significantly reduces the time it takes for Prysm's beacon node to sync by piggypacking off of another fully-synced node.
Learn how to check the status of your execution node, beacon node, and validator.
Learn how to run a slasher, an optional beacon node process that detects and reports slashable offenses on the Ethereum proof-of-stake network.
Learn how to run your beacon node as an archival node. Archival nodes are like regular beacon nodes that are configured to store more blockchain data locally, increasing data retrieval performance in exchange for increased data storage requirements.
This subsection contains how-tos that help you back up and migrate Prysm's data.
Learn how to back up and restore your beacon node and validator databases so you can minimize downtime in the event of a system failure.
Learn how to import and export your slashing protection history database, a special-purpose database that protects your validator from slashable events.
Learn how to migrate from one host system to another while minimizing risk of slashing and downtime.
Learn how to migrate from one client to another while minimizing risk of slashing and downtime.
This subsection contains how-tos that help you manage your validator and associated keys/wallets.
Learn how to create a wallet using Prysm.
Learn how to configure a remote signing wallet, a special type of wallet that lets your validator connect to a remote server to retrieve the keys you need to process signing requests via a secure gRPC connection. This guidance is targeted at power users who are willing to increase complexity in exchange for increased validator key security.
Learn how to import EIP-2335 keystore files into Prysm, such as those generated by the Ethereum deposit CLI.
Learn how to minimize validator downtime by running your validator as a background service through either Docker or
Learn how to use Web3Signer, an open-source remote signing service that allows you to store your validator keys remotely instead of locally.
Learn how to configure your validator to add graffiti to the blocks that it proposes.
Learn how to voluntarily exit your validator from Ethereum's consensus layer Beacon Chain network.
This subsection contains how-tos that help you configure monitoring and alerts for Prysm.
Learn how to assess the health of your Prysm beacon node and/or validator by analyzing output logs.
Learn how to use Prysm to monitor block proposals, attestations, slashings, and more for any number of validators.
Learn how to configure dashboarding and alerts for your node, validator, and slasher using Prometheus (to aggregate data) and Grafana (to display it within a dashboard).
Learn how to collect beacon node and validator metrics using Prysm's
client-stats utility. This can be used to relay metrics data to the beaconcha.in stats service.
Prysm's Web UI can be used to monitor and configure your beacon node and validator on
localhost using an app-like interface.
This subsection contains how-tos that will help you manage your gRPC and P2P connectivity.
Learn how to create and configure TLS certificates that enable secure gRPC connections to your beacon node.
Learn how to configure ports and firewalls so your node can build stronger connections with more peers.
This section contains beginner-friendly conceptual guidance authored for readers who are new to Prysm and/or Ethereum.
Learn about the various node types, networks, network layers, and how it all relates.
Learn how keys, wallets, and accounts relate to each other within the context of Prysm and Ethereum.
Learn about slashing, a mechanism that incentivizes Ethereum nodes to detect and punish malicious actors in the Ethereum network.
This section contains documents targeted at developers who want to contribute to Prysm's codebase.
This section contains documentation that applies to vNext versions of Prysm.
Join our Discord server - a member of the team or our community will be happy to help.