{"id":14557493,"url":"https://github.com/unionlabs/union","last_synced_at":"2025-05-12T16:14:36.788Z","repository":{"id":253292046,"uuid":"641656392","full_name":"unionlabs/union","owner":"unionlabs","description":"The trust-minimized, zero-knowledge bridging protocol, designed for censorship resistance, extremely high security, and usage in decentralized finance.","archived":false,"fork":false,"pushed_at":"2025-05-12T13:31:17.000Z","size":465776,"stargazers_count":60844,"open_issues_count":313,"forks_count":2998,"subscribers_count":1332,"default_branch":"main","last_synced_at":"2025-05-12T14:37:10.237Z","etag":null,"topics":["astro","blockchain","bridge","cosmos","cosmwasm","ethereum","evm","golang","indexer","move","nix","prover","relayer","rust","solidity","svelte","typescipt","typescript","zero-knowledge"],"latest_commit_sha":null,"homepage":"https://union.build","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/unionlabs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-05-16T22:33:39.000Z","updated_at":"2025-05-12T14:36:29.000Z","dependencies_parsed_at":"2025-05-05T14:20:24.258Z","dependency_job_id":null,"html_url":"https://github.com/unionlabs/union","commit_stats":{"total_commits":7258,"total_committers":15,"mean_commits":483.8666666666667,"dds":0.7963626343345274,"last_synced_commit":"2d1fee174f0eb5a522a140963057faaadd109b40"},"previous_names":["unionlabs/union"],"tags_count":97,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unionlabs%2Funion","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unionlabs%2Funion/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unionlabs%2Funion/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/unionlabs%2Funion/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/unionlabs","download_url":"https://codeload.github.com/unionlabs/union/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253774581,"owners_count":21962199,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["astro","blockchain","bridge","cosmos","cosmwasm","ethereum","evm","golang","indexer","move","nix","prover","relayer","rust","solidity","svelte","typescipt","typescript","zero-knowledge"],"created_at":"2024-09-06T20:01:23.820Z","updated_at":"2025-05-12T16:14:31.770Z","avatar_url":"https://github.com/unionlabs.png","language":"Rust","readme":"\u003cdiv align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"./.github/images/union-logo-white.svg\"\u003e\n    \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"./.github/images/union-logo-black.svg\"\u003e\n    \u003cimg alt=\"Union\"\n         src=\"./.github/images/union-logo-black.svg\"\n         width=\"100%\"\u003e\n  \u003c/picture\u003e\n\u003c/div\u003e\n\n\u003cbr/\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![built with garnix](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Fgarnix.io%2Fapi%2Fbadges%2Funionlabs%2Funion%3Fbranch%3Dmain)](https://garnix.io)\n[![Docs](https://img.shields.io/badge/docs-main-blue)][docs]\n[![Discord badge]](https://discord.union.build)\n[![Twitter handle]][twitter badge]\n\n\u003c/div\u003e\n\nUnion is the hyper-efficient zero-knowledge infrastructure layer for general message passing, asset transfers, NFTs, and DeFi. It’s 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)](https://github.com/berachain/beacon-kit), [Arbitrum], and more.\n\nThe 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.\n\n## Components\n\n| Component                                             | Description                                          | Language(s)           |\n| ----------------------------------------------------- | ---------------------------------------------------- | --------------------- |\n| [`uniond`](./uniond/README.md)                        | The Union node implementation, using [`CometBLS`]    | [Go]                  |\n| [`galoisd`](./galoisd)                                | The zero-knowledge prover implementation             | [Go] [Gnark]          |\n| [`voyager`](./voyager)                                | Modular hyper-performant cross-ecosystem relayer     | [Rust]                |\n| [`hubble`](./hubble)                                  | Multi-ecosystem, GMP-enabled chain indexer           | [Rust]                |\n| [`cosmwasm`](./cosmwasm)                              | [CosmWasm] smart contract stack                      | [Rust]                |\n| [`light-clients`](./cosmwasm/ibc-union/lightclient)   | [Light Clients] for various ecosystems               | [Rust]                |\n| [`unionvisor`](./unionvisor/README.md)                | Node supervisor intended for production usage        | [Rust]                |\n| [`drip`](./drip)                                      | Faucet for [Cosmos] chains: [app.union.build/faucet] | [Rust]                |\n| [`evm`](./evm)                                        | [EVM] smart contract stack                           | [Solidity]            |\n| [`app`](./app2)                                       | [app.union.build]                                    | [TypeScript] [Svelte] |\n| [`site`](./site)                                      | [union.build]                                        | [TypeScript] [Astro]  |\n| [`TypeScript SDK`](./typescript-sdk)                  | TypeScript SDK for interacting with Union            | [TypeScript]          |\n\n## Quickstart\n\nInstall [Nix] to _[reproducibly build](https://en.wikipedia.org/wiki/Reproducible_builds) any component_, and to enter a dev shell with _all dependencies_:\n\n```sh\ncurl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install\n```\n\n_(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.)_\n\nYou can now _reproducibly_ build any of Union's components from source:\n\n```sh\nnix build .#uniond -L\nnix build .#voyager -L\nnix build .#app -L\n\n# to see all packages, run:\nnix flake show\n```\n\nThe result of whatever you build will be in `result/`\n\nYou 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:\n_(Don't worry, this will not affect your system outside of this repo)_\n\n```sh\nnix develop\n```\n\nRun the following to format the entire repo and check your spelling before each PR:\n\n```sh\nnix run .#pre-commit -L\n```\n\nCheck the `#developers` channel on [Union's discord](https://discord.union.build) if you need any help with this.\n\n## Docs\n\nThe official docs are hosted [here][docs]. Each individual component also has accompanying developer documentation for contributors, which you can find in each `README.md`.\n\n[app.union.build]: https://app.union.build\n[app.union.build/faucet]: https://app.union.build/faucet\n[arbitrum]: https://github.com/OffchainLabs/arbitrum\n[astro]: https://astro.build\n[consensus verification]: https://union.build/docs/concepts/consensus-verification/\n[cosmos]: https://cosmos.network\n[cosmwasm]: https://cosmwasm.com/\n[discord badge]: https://img.shields.io/discord/1158939416870522930?logo=discord\n[docs]: https://docs.union.build \"Official Union Docs\"\n[ethereum]: https://ethereum.org\n[evm]: https://ethereum.org/en/developers/docs/evm/\n[gnark]: https://github.com/ConsenSys/gnark\n[go]: https://go.dev/\n[ibc]: https://github.com/cosmos/ibc \"cosmos/ibc\"\n[light clients]: https://a16zcrypto.com/posts/article/an-introduction-to-light-clients/\n[nix]: https://zero-to-nix.com/\n[nixos]: https://nixos.org\n[orbstack]: https://orbstack.dev/\n[rust]: https://www.rust-lang.org/\n[solidity]: https://soliditylang.org/\n[svelte]: https://svelte.dev\n[twitter badge]: https://twitter.com/intent/follow?screen_name=union_build\n[twitter handle]: https://img.shields.io/twitter/follow/union_build.svg?style=social\u0026label=Follow\n[typescript]: https://www.typescriptlang.org/\n[union.build]: https://union.build\n[`cometbls`]: https://github.com/unionlabs/cometbls\n","funding_links":[],"categories":["Rust","区块链_智能合约"],"sub_categories":["管理面板"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funionlabs%2Funion","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Funionlabs%2Funion","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Funionlabs%2Funion/lists"}