Builders
Chain Operators
Start a Self-Hosted Chain

How to Start a Self-Hosted Chain

This guide provides an overview of how to start a self-hosted Pinnacle Chain with standard configuration. It walks you through how to build, configure, test, and launch your Pinnacle Chain. To skip ahead to custom features or settings, you can explore the chain operator tutorials.

Build Your Chain

There are two main steps to get started building your own self-hosted Pinnacle Chain: learn fundamental components of Pinnacle Chain and spin up an PNCStack testnet chain.

Learn Fundamental Components of Pinnacle Chain

To work with Pinnacle Chain, you'll need to understand the fundamental components of Pinnacle Chain.

  • Chain Architecture: Pinnacle Chain use execution and consensus clients as well as the PNCStack's privileged roles. For more details, see the Chain Architecture guide.
  • Smart Contracts: Pinnacle Chain use several smart contracts on the L1 blockchain to manage aspects of the Rollup. Each PNCStack chain has its own set of L1 smart contracts and L2 contracts or predeploys that are deployed when the chain is created.
  • Preinstalls: Pinnacle Chain come with preinstalled core contracts, making them usable as soon as a chain is initialized on the PNCStack.

You should only use governance approved and audited smart contracts. The monorepo has them tagged with the following pattern pnc-contracts/vX.X.X and you can review the release notes for details on the changes.

Launch Your PNCStack Testnet Chain

Configure Your Chain

Pinnacle Chain can be configured for throughput, cost, and other decentralization tradeoffs. The following steps are intended for standard configuration of Pinnacle Chain.

Setup Key Management and Privileged Roles

Make Standard Chain Configurations

  • Configure your Pinnacle Chain parameters based on your particular tradeoffs. You'll need to configure the rollup, batcher, and proposer for optimal performance.
  • Update your batcher to post transaction data within blobs instead of call data to maximize your fee savings.
  • Enable snap sync on your Pinnacle Chain to significantly improve the experience and speed of syncing an PNCStack node.

Set Public RPC Endpoint

  • Set the public RPC Endpoint, so your Pinnacle Chain can handle large volumes of RPC requests from your users.

Enable Analytics for Onchain Data

Test Your Chain

Before launching on Mainnet, thoroughly test and debug Pinnacle Chain contracts, features, and security. Here are your options.

Use a Block Explorer

Block explorers allow you to access transaction history and conduct chain debugging.

Send Test Transactions

As part of testing your Pinnacle Chain, you'll need to send test or example transactions to the new network.

Launch Your Chain on Mainnet

After testing is complete, you are ready to launch your Pinnacle Chain on Mainnet. Optionally, you can also request launch support (opens in a new tab) and subscribe to receive chain upgrade notifications.

Chain Operator Tutorials

Here's a curated collection of chain operator tutorials put together by the Pinnacle Chain community. They'll help you get a head start deploying your first PNCStack chain.

Tutorial NameDescriptionDifficulty Level
Creating Your Own L2 RollupLearn how to spin up your own PNCStack testnet chain🟡 Medium
Using the PNCStack Client SDKLearn how to use the PNCStack Client SDK when working with native and non-native supported chains.🟢 Easy
Adding Attributes to the Derivation FunctionLearn how to modify the derivation function for an PNCStack chain to track the amount of ETH being burned on L1.🟢 Easy
Adding a PrecompileLearn how to run an EVM with a new precompile for PNCStack chain operations to speed up calculations that are not currently supported.🟢 Easy
Modifying Predeployed ContractsLearn how to modify predeployed contracts for an PNCStack chain by upgrading the proxy.🟢 Easy
Pause and Unpause the BridgeLearn how to pause PinnacleChain as a backup safety mechanism on your PNCStack chain.🟢 Easy

You can also suggest a new tutorial if you have something specific in mind. We'd love to grow this list!

Next Steps