unionlabs

    unionlabs/union

    #272 this week

    The trust-minimized, zero-knowledge bridging protocol, designed for censorship resistance, extremely high security, and usage in decentralized finance.

    web
    blockchain
    frontend
    astro
    cosmos
    cosmwasm
    ethereum
    evm
    Rust
    Apache-2.0
    73.9K stars
    3.9K forks
    73.9K GitHub watchers
    Updated 7/8/2026
    View on GitHub

    Backblaze Generative Media Hackathon

    Build the next generation of AI media apps with Genblaze, stored on Backblaze B2. $10,000 in prizes.

    Enter the hackathon

    Loading star history...

    Use Cases & Benefits

    • Union is a trust-minimized, zero-knowledge bridging protocol designed for censorship resistance and high security in decentralized finance.
    • Key technologies include Rust, Go, Solidity, CosmWasm, zero-knowledge proofs, and interoperability with Cosmos and EVM chains.
    • Strengths are high security without trusted third parties and decentralized governance; limitation includes Linux-centric build environment.
    • With 74,903 stars and 3,814 forks since 2023, it shows strong adoption and community interest in blockchain interoperability.
    • Ideal for developers building secure cross-chain DeFi applications, NFT transfers, and general message passing across blockchain ecosystems.

    About union

    Union

    built with garnix Docs Discord badge Twitter handle

    Union is the hyper-efficient zero-knowledge infrastructure layer for general message passing, asset transfers, NFTs, and DeFi. Its based on Consensus Verification and has no dependencies on trusted third parties, oracles, multi-signatures or MPC. It implements IBC for compatibility with Cosmos chains and connects to EVM chains like Ethereum, Berachain (beacon-kit), Arbitrum, and more.

    The upgradability of contracts on other chains, connections, token configurations, and evolution of the protocol will all be controlled by decentralized governance, aligning the priorities of Union with its users, validators, and operators.

    Components

    ComponentDescriptionLanguage(s)
    uniondThe Union node implementation, using CometBLSGo
    galoisdThe zero-knowledge prover implementationGo Gnark
    voyagerModular hyper-performant cross-ecosystem relayerRust
    hubbleMulti-ecosystem, GMP-enabled chain indexerRust
    cosmwasmCosmWasm smart contract stackRust
    light-clientsLight Clients for various ecosystemsRust
    unionvisorNode supervisor intended for production usageRust
    dripFaucet for Cosmos chains: app.union.build/faucetRust
    evmEVM smart contract stackSolidity
    appapp.union.buildTypeScript Svelte
    siteunion.buildTypeScript Astro
    TypeScript SDKTypeScript SDK for interacting with UnionTypeScript

    Quickstart

    Install Nix to reproducibly build any component, and to enter a dev shell with all dependencies:

    curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
    

    (Note that some components can only be built on Linux. If you are using macOS, we recommend using OrbStack to easily set up a NixOS VM within two minutes. Most Union developers use macOS with OrbStack, and there is no need to install Nix inside of the NixOS VM.)

    You can now reproducibly build any of Union's components from source:

    nix build .#uniond -L
    nix build .#voyager -L
    nix build .#app -L
    
    # to see all packages, run:
    nix flake show
    

    The result of whatever you build will be in result/

    You can now also enter our dev shell, which has all of the dependencies (cargo, rustc, node, go, etc.) you need to work on any component: (Don't worry, this will not affect your system outside of this repo)

    nix develop
    

    Run the following to format the entire repo and check your spelling before each PR:

    nix run .#pre-commit -L
    

    Check the #developers channel on Union's discord if you need any help with this.

    Docs

    The official docs are hosted here. Each individual component also has accompanying developer documentation for contributors, which you can find in each README.md.

    Discover Repositories

    Search across tracked repositories by name or description