Repositories
ZKsync
Core components
Public repository | Description |
---|---|
zksync-era | zk server logic, including the APIs and database accesses |
zksync-wallet-vue | Wallet frontend |
era-contracts | L1 & L2 contracts, that are used to manage bridges and communication between L1 & L2. Privileged contracts that are running on L2 (like Bootloader or ContractDeployer) |
Compiler
Public repository | Description |
---|---|
era-compiler-tester | Integration testing framework for running executable tests on zkEVM |
era-compiler-tests | Collection of executable tests for zkEVM |
era-compiler-llvm | zkEVM fork of the LLVM framework |
era-compiler-solidity | Solidity Yul/EVMLA compiler front end |
era-compiler-vyper | Vyper LLL compiler front end |
era-compiler-llvm-context | LLVM IR generator logic shared by multiple front ends |
era-compiler-common | Common compiler constants |
era-compiler-llvm-builder | Tool for building our fork of the LLVM framework |
zkEVM / crypto
Public repository | Description |
---|---|
era-zkevm_opcode_defs | Opcode definitions for zkEVM - main dependency for many other repos |
era-zk_evm | EVM implementation in pure rust, without circuits |
era-sync_vm | EVM implementation using circuits |
era-zkEVM-assembly | Code for parsing zkEVM assembly |
era-zkevm_test_harness | Tests that compare the two implementation of the zkEVM - the non-circuit one (zk_evm) and the circuit one (sync_vm) |
era-zkevm_tester | Assembly runner for zkEVM testing |
era-boojum | New proving system library - containing gadgets and gates |
era-shivini | Cuda / GPU implementation for the new proving system |
era-zkevm_circuits | Circuits for the new proving system |
franklin-crypto | Gadget library for the Plonk / plookup |
rescue-poseidon | Library with hash functions used by the crypto repositories |
snark-wrapper | Circuit to wrap the final FRI proof into snark for improved efficiency |
Old proving system
Public repository | Description |
---|---|
era-bellman-cuda | Cuda implementations for cryptographic functions used by the prover |
era-heavy-ops-service | Main circuit prover that requires GPU to run |
era-circuit_testing | ?? |
Tools & contract developers
Public repository | Description |
---|---|
era-test-node | In memory node for development and smart contract debugging |
local-setup | Docker-based zk server (together with L1), that can be used for local testing |
zksync-cli | Command line tool to interact with ZKsync |
block-explorer | Online blockchain browser for viewing and analyzing ZKsync chain |
dapp-portal | ZKsync Wallet + Bridge DApp |
hardhat-zksync | ZKsync Hardhat plugins |
zksolc-bin | solc compiler binaries |
zkvyper-bin | vyper compiler binaries |
Examples & documentation
Public repository | Description |
---|---|
zksync-web-era-docs | Public ZKsync documentation, API descriptions etc. |
zksync-contract-templates | Quick contract deployment and testing with tools like Hardhat on Solidity or Vyper |
zksync-frontend-templates | Rapid UI development with templates for Vue, React, Next.js, Nuxt, Vite, etc. |
zksync-scripting-templates | Automated interactions and advanced ZKsync operations using Node.js |
tutorials | Tutorials for developing on ZKsync |
ZKsync Lite
Public repository | Description |
---|---|
zksync | ZKsync Lite implementation |
ZKsync-lite-docs | Public ZKsync Lite documentation |
zksync-dapp-checkout | Batch payments DApp |