Skip to main content
Push LogoPush Logo
Docs
Explore
  • Chain Docs

    Chain Docs

    Read More about Push Chain

  • Push Chain Home

    Push Chain Home

    Back to Push Chain Homepage

BlogDiscordPush Portal
Skip to main content

Documentation Hub

Get started with building shared state apps for any chain.
Image showing BRB Chat is powered by Push Chat
Image for What is Push Chain?

What is Push Chain?

Push Chain provides a unified toolkit to build truly universal apps.

Learn More

Image for Let's build!

Let's build!

Everything you need with Push Chain SDK to create your universal app.

Learn More

Image for UI Kit

UI Kit

Integrate any React based app in less than 5 minutes.

Learn More

Quickstart

Everything you will need to get up and running in 2 minutes or less!

Explore Quickstart

Core SDK Quickstart
// Import Push Chain SDK
import { PushChain } from '@pushchain/core';
import { ethers } from 'ethers';

// Generate wallet
const wallet = ethers.Wallet.createRandom();

// Create Signer, change JsonRpcProvider to attach different chain's account
const provider = new ethers.JsonRpcProvider('https://evm.rpc-testnet-donut-node1.push.org/');
const signer = wallet.connect(provider);

// Convert to Universal Signer
const universalSigner = await PushChain.utils.signer.toUniversal(signer);

// Initialize Push Chain Client
const pushChainClient = await PushChain.initialize(universalSigner, {
network: PushChain.CONSTANTS.PUSH_NETWORK.TESTNET,
});

// Send a universal transaction (from any chain to Push Chain)
const txHash = await pushChainClient.universal.sendTransaction({
to: '0xD0DE00000447492307108Bdc7Ff6BaB33Ff37Dacc479', // To address on Push Chain
value: BigInt(0), // $PC Value to send
});
UI-Kit Quickstart
// Import Push UI Kit
import {
PushUniversalWalletProvider,
PushUniversalAccountButton,
usePushWalletContext,
usePushChainClient,
PushUI
} from '@pushchain/ui-kit';

function App() {
// create wallet config to pass to Provider
const walletConfig = {
network: PushUI.CONSTANTS.PUSH_NETWORK.TESTNET,
};

return (
<PushUniversalWalletProvider
config={walletConfig}
>
// Abstracts Core SDK
// Access from usePushChainClient()
<PushUniversalAccountButton />
</PushUniversalWalletProvider>
);
}

Tooling

Everything you will need to get up and running in 2 minutes or less!

Explore Tooling

Wallet Setup

Add Push Chain as custom network to your wallet before building your app.

Faucet

A drip of testnet $PC to play with, deploy your smart contracts, and test your app.

Chain Explorer

Explore Push Chain transactions, blocks, and accounts in real time.

Tutorials

Tutorials to enable you to build your first Universal Application.

Explore Tutorials

Simple Counter App

The process of building a simple smart contract like a counter is exactly similar to any other EVM Chain.

Universal Counter App

GM vs GM is a simple example to show how to create a Universal App on Push...

Want to dive deeper?

Explore the full docs to get started.
Edit this page