Getting Started
A quick guide to getting started with developing on ZippyChain blockchain.
Table of Contents
Overview
ZippyChain is an Ethereum-compatible Layer-1 blockchain with 25,000 TPS of throughput and block time 2 seconds. Developing on ZippyChain should feel very familiar for Ethereum developers, as ZippyChain is fully Ethereum compatible and inherits almost all the tools and libraries from Ethereum, like truffle, remix, web3js, etc.
ZippyChain's implementation of the Ethereum Virtual Machine complies with the Shanghai fork; simulation of historical Ethereum transactions with the ZippyChain execution environment produces identical outcomes. ZippyChain also offers full Ethereum RPC compatibility so that users can interact with ZippyChain using familiar tools like Etherscan, Phantom, or MetaMask.
ZippyChain accomplishes these performance improvements, while preserving backward compatibility, through the introduction of several major innovations:
- Fast BFT - Efficient consensus mechanism
- Parallel Execution - Enables high throughput
- Sharding - Scales horizontally for increased capacity
Although ZippyChain features parallel execution and pipelining, it is important to note that blocks in each shard are linear, and transactions are linearly ordered within each block.
Transactions
Address Space
Same address space as Ethereum (20-byte addresses using ECDSA)
Transaction Format/Types
Same as Ethereum. ZippyChain transactions use the same typed transaction envelope introduced in EIP-2718, encoded with RLP.
Transaction type 0 ("legacy"), 1 ("EIP-2930"), and 2 ("EIP-1559"; now the default in Ethereum) are supported.
Transaction type 3 ("EIP-4844") is not yet supported in testnet.
Wallet Compatibility
ZippyChain is compatible with standard Ethereum wallets such as TokenPocket or MetaMask. The only change required is to alter the RPC URL and chain id.
Gas Pricing
ZippyChain is EIP-1559-compatible; base fee and priority fee work as in Ethereum.
Transactions are ordered according to a Priority Gas Auction (descending total gas price).
In the incentivized testnet, base fee is hard-coded to 5 gwei, although it will become dynamic in the future.
In testnet, transactions are charged based on gas limit rather than gas usage, i.e. total tokens deducted from the sender's balance is value + gas_price * gas_limit.
Smart Contracts
Opcodes
ZippyChain supports all Ethereum opcodes up to the Shanghai fork.
Precompiles
ZippyChain supports all Ethereum precompiles.
Solidity
ZippyChain supports Solidity versions up to 0.8.20.
Libraries and Frameworks
ZippyChain is compatible with all Ethereum development tools and libraries, including:
- Hardhat
- Foundry
- Truffle
- Remix
- Web3.js
- Ethers.js
- OpenZeppelin Contracts
Addresses
ZippyChain uses the same address format as Ethereum: 20-byte (40 hex characters) addresses derived from the public key of the account.
Example address: 0x742d35Cc6634C0532925a3b844Bc454e4438f44e
ZippyChain also supports ENS-like domain resolution through the ZippyChain Name Service (ZNS), which will be available in the future.
Network Information
ZippyChain currently has a testnet available for developers. Here are the details:
Testnet
- Network Name: ZippyChain Testnet
- Chain ID: 700 (Shard 0)
- RPC URL: https://t.s0.n6.zippychain.ai
- Currency Symbol: tZIPPY
- Block Explorer URL: https://testnet-scan.zippychain.ai
Mainnet (Coming Soon)
- Network Name: ZippyChain
- Chain ID: TBA
- RPC URL: TBA
- Currency Symbol: ZIPPY
- Block Explorer URL: TBA
Get a Wallet
To really explore the full potential of ZippyChain, creating a wallet is the next step.
Wallet Setup
To interact with ZippyChain, you'll need a wallet. You have two options:
Option 1: ZippyChain Wallet
The ZippyChain Wallet is our official wallet application that provides a seamless experience for managing your assets on ZippyChain.
- Download the ZippyChain Wallet from the Downloads page
- Install the application on your device
- Create a new wallet or import an existing one using your seed phrase
- Secure your wallet with a strong password
Option 2: MetaMask
MetaMask is a popular Ethereum wallet that can be configured to work with ZippyChain.
- Install the MetaMask extension for your browser
- Create a new wallet or import an existing one
- Configure MetaMask to connect to ZippyChain (see next section)
For detailed instructions, see our guide Add ZippyChain to MetaMask
Deploy Smart Contract
ZippyChain supports multiple development environments for deploying smart contracts.
Verify Smart Contract
After deploying your smart contract, you can verify it to make the source code publicly available.
Your First Transaction
Now that you have your wallet set up, let's send your first transaction:
- Open your wallet (ZippyChain Wallet or MetaMask)
- Make sure you're connected to ZippyChain Testnet
- Click "Send" or "Transfer"
- Enter a recipient address (you can use another wallet address you own)
- Enter the amount to send (e.g., 0.1 tZIPPY)
- Confirm the transaction
Your transaction should be confirmed within a few seconds. You can check the status: ZippyChain Testnet Explorer
Next Steps
Now that you've set up your wallet and sent your first transaction, you're ready to start building on ZippyChain. Here are some next steps: