1212</div >
1313<div >
1414
15- [ ![ Docs] [ docs-image ]] [ docs-link ]
16- [ ![ Build Status] [ build-image ]] [ build-link ]
15+ [ ![ Docs] [ docs-image ]] [ docs-link ] [ ![ Build Status] [ build-image ]] [ build-link ]
1716[ ![ Code Coverage] [ codecov-image ]] [ codecov-link ]
1817[ ![ Apache 2.0 Licensed] [ license-image ]] [ license-link ]
19- ![ Version] [ crates-io-version ]
20- ![ Downloads] [ crates-io-downloads ]
18+ ![ Version] [ crates-io-version ] ![ Downloads] [ crates-io-downloads ]
2119![ Rust Stable] [ msrv-image ]
2220
2321</div >
@@ -30,23 +28,23 @@ sub-crates that can be used independently or together.
3028
3129## Project Structure
3230
33- | <div style =" width :100px " >Crate</div > | Description |
34- | ------------------------------------- | ----------- |
35- | [ ibc] ( ibc ) | Re-exports all the data structures and on-chain logic of various IBC core, clients and applications. |
36- | [ ibc-data-types] ( ibc-data-types ) | Re-exports all the IBC data types that are shared across different IBC implementations. |
37- | [ ibc-core] ( ibc-core ) | Contains data structures and implementations of all the IBC core specifications. |
38- | [ ibc-clients] ( ibc-clients ) | Contains data structures and implementations of various IBC light clients. |
39- | [ ibc-apps] ( ibc-apps ) | Contains data structures and implementations of various IBC applications. |
40- | [ ibc-testkit] ( ibc-testkit ) | Provides testing toolkit to aid ` ibc-rs ` and host chains in writing integration tests. |
41- | [ ibc-query] ( ibc-query ) | Contains utility traits and implementations for querying states of an integrated IBC module. |
42- | [ ibc-derive] ( ibc-derive ) | Derive macros for ` ClientState ` and ` ConsensusState ` traits, reducing boilerplate. |
31+ | <div style =" width :100px " >Crate</div > | Description |
32+ | ------------------------------------ | ----------------------------------------------------------------------------------------- ----------- |
33+ | [ ibc] ( ibc ) | Re-exports all the data structures and on-chain logic of various IBC core, clients and applications. |
34+ | [ ibc-data-types] ( ibc-data-types ) | Re-exports all the IBC data types that are shared across different IBC implementations. |
35+ | [ ibc-core] ( ibc-core ) | Contains data structures and implementations of all the IBC core specifications. |
36+ | [ ibc-clients] ( ibc-clients ) | Contains data structures and implementations of various IBC light clients. |
37+ | [ ibc-apps] ( ibc-apps ) | Contains data structures and implementations of various IBC applications. |
38+ | [ ibc-testkit] ( ibc-testkit ) | Provides testing toolkit to aid ` ibc-rs ` and host chains in writing integration tests. |
39+ | [ ibc-query] ( ibc-query ) | Contains utility traits and implementations for querying states of an integrated IBC module. |
40+ | [ ibc-derive] ( ibc-derive ) | Derive macros for ` ClientState ` and ` ConsensusState ` traits, reducing boilerplate. |
4341
4442## Contributing
4543
46- IBC is specified in English in the [ cosmos/ibc repo] [ ibc ] . Any protocol changes
47- or clarifications should be contributed there.
44+ IBC is specified in English in the [ ` cosmos/ibc ` repo] [ ibc ] . Any protocol
45+ changes or clarifications should be contributed there.
4846
49- If you're interested in contributing, please take a look at the
47+ If you're interested in contributing, please refer to the
5048[ CONTRIBUTING] ( ./CONTRIBUTING.md ) guidelines. We welcome and appreciate
5149community contributions!
5250
@@ -73,9 +71,48 @@ development.
7371- [ IBC Go implementation] [ ibc-go ]
7472- [ Protobuf definitions in Rust] [ ibc-proto-rs ]
7573
74+ ## ` ibc-rs ` in the wild
75+
76+ The [ IBC Protocol] [ ibc-protocol ] is integrated in numerous networks and
77+ projects. The ` ibc-rs ` implementation, in particular, is used for IBC
78+ integration, testing, or development for some of the most technically compelling
79+ use cases.
80+
81+ | # | Integration use-case | Team | Used-Modules | Links | Phase |
82+ | -: | ------------------------------- | :-----------: | :----------: | :---------------------------------------------------------: | :----------------------: |
83+ | 1 | Solana IBC implementation | Composable | :100 : | [ Picasso Network] [ pica-network ] | :white_check_mark : |
84+ | 2 | Ethereum IBC relayer | Composable | :100 : | [ Picasso Network] [ pica-network ] | :white_check_mark : |
85+ | 3 | Polkadot SDK IBC implementation | Composable | :100 : | [ Picasso Network] [ pica-network ] | :white_check_mark : |
86+ | 4 | Nomic | Nomic | :100 : | [ Nomic network] [ nomic ] | :white_check_mark : |
87+ | 5 | Namada | Anoma | :100 : | [ Namada] [ namada ] | :hourglass_flowing_sand : |
88+ | 6 | Sovereign | Informal | :100 : | [ ` sovereign-ibc ` ] [ sov-ibc ] | :hourglass_flowing_sand : |
89+ | 7 | Hermes IBC relayer | Informal | :100 : | [ ` basecoin-rs ` ] [ basecoin-rs ] | :hammer_and_pick : |
90+ | 8 | Substrate pallet | Octopus | :100 : | [ Substrate IBC Pallet] [ substrate-ibc ] | :hammer_and_pick : |
91+ | 9 | Near Protocol | Octopus | :100 : | [ ` near-ibc ` ] [ near-ibc ] | :hourglass_flowing_sand : |
92+ | 10 | Tendermint Light Client | Electron Labs | ` ics07 ` | [ ` Electron-Labs/tendermint-rs ` ] [ electronlabs-tendermint-rs ] | :hourglass_flowing_sand : |
93+ | 11 | Starknet | Informal | :eyes : | :eyes : | :eyes : |
94+
95+ Legend:
96+
97+ - :white_check_mark : IBC integration in production
98+ - :hourglass_flowing_sand : IBC integration in development (testnet or devnet)
99+ - :hammer_and_pick : used in testing and/or development
100+ - :100 : full IBC integration
101+ - :eyes : early exploration phase
102+
103+ [ pica-network ] : https://www.picasso.network
104+ [ nomic ] : https://www.nomic.io
105+ [ namada ] : https://namada.net
106+ [ basecoin-rs ] : https://github.com/informalsystems/basecoin-rs
107+ [ hermes ] : https://hermes.informal.systems
108+ [ sov-ibc ] : https://github.com/informalsystems/sovereign-ibc
109+ [ substrate-ibc ] : https://github.com/octopus-network/substrate-ibc
110+ [ near-ibc ] : https://github.com/octopus-network/near-ibc
111+ [ electronlabs-tendermint-rs ] : https://github.com/Electron-Labs/tendermint-rs
112+
76113## License
77114
78- Copyright © 2022 Informal Systems Inc. and ibc-rs authors.
115+ Copyright © 2024 Informal Systems Inc. and ` ibc-rs ` authors.
79116
80117Licensed under the Apache License, Version 2.0 (the "License"); you may not use
81118the files in this repository except in compliance with the License. You may
@@ -100,12 +137,12 @@ specific language governing permissions and limitations under the License.
100137[ crates-io-version ] : https://img.shields.io/crates/v/ibc.svg
101138[ crates-io-downloads ] : https://img.shields.io/crates/d/ibc.svg
102139[ msrv-image ] : https://img.shields.io/crates/msrv/ibc
103-
104140[ // ] : # ( general links )
105141[ ibc ] : https://github.com/cosmos/ibc
106142[ ibc-go ] : https://github.com/cosmos/ibc-go
107143[ ibc-proto-rs ] : https://github.com/cosmos/ibc-proto-rs
108144[ ibc-homepage ] : https://cosmos.network/ibc
145+ [ ibc-protocol ] : https://ibcprotocol.dev
109146[ cosmos-link ] : https://cosmos.network
110147[ semver ] : https://semver.org/
111148[cosmos-shield]: https://img.shields.io/static/v1?label=&labelColor=1B1E36&color=1B1E36&message=cosmos%20ecosystem&style=for-the-badge&logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjMuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyNTAwIDI1MDAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI1MDAgMjUwMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiM2RjczOTA7fQoJLnN0MXtmaWxsOiNCN0I5Qzg7fQo8L3N0eWxlPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTI1Mi42LDE1OS41Yy0xMzQuOSwwLTI0NC4zLDQ4OS40LTI0NC4zLDEwOTMuMXMxMDkuNCwxMDkzLjEsMjQ0LjMsMTA5My4xczI0NC4zLTQ4OS40LDI0NC4zLTEwOTMuMQoJUzEzODcuNSwxNTkuNSwxMjUyLjYsMTU5LjV6IE0xMjY5LjQsMjI4NGMtMTUuNCwyMC42LTMwLjksNS4xLTMwLjksNS4xYy02Mi4xLTcyLTkzLjItMjA1LjgtOTMuMi0yMDUuOAoJYy0xMDguNy0zNDkuOC04Mi44LTExMDAuOC04Mi44LTExMDAuOGM1MS4xLTU5Ni4yLDE0NC03MzcuMSwxNzUuNi03NjguNGM2LjctNi42LDE3LjEtNy40LDI0LjctMmM0NS45LDMyLjUsODQuNCwxNjguNSw4NC40LDE2OC41CgljMTEzLjYsNDIxLjgsMTAzLjMsODE3LjksMTAzLjMsODE3LjljMTAuMywzNDQuNy01Ni45LDczMC41LTU2LjksNzMwLjVDMTM0MS45LDIyMjIuMiwxMjY5LjQsMjI4NCwxMjY5LjQsMjI4NHoiLz4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTIyMDAuNyw3MDguNmMtNjcuMi0xMTcuMS01NDYuMSwzMS42LTEwNzAsMzMycy04OTMuNSw2MzguOS04MjYuMyw3NTUuOXM1NDYuMS0zMS42LDEwNzAtMzMyCglTMjI2Ny44LDgyNS42LDIyMDAuNyw3MDguNkwyMjAwLjcsNzA4LjZ6IE0zNjYuNCwxNzgwLjRjLTI1LjctMy4yLTE5LjktMjQuNC0xOS45LTI0LjRjMzEuNi04OS43LDEzMi0xODMuMiwxMzItMTgzLjIKCWMyNDkuNC0yNjguNCw5MTMuOC02MTkuNyw5MTMuOC02MTkuN2M1NDIuNS0yNTIuNCw3MTEuMS0yNDEuOCw3NTMuOC0yMzBjOS4xLDIuNSwxNSwxMS4yLDE0LDIwLjZjLTUuMSw1Ni0xMDQuMiwxNTctMTA0LjIsMTU3CgljLTMwOS4xLDMwOC42LTY1Ny44LDQ5Ni44LTY1Ny44LDQ5Ni44Yy0yOTMuOCwxODAuNS02NjEuOSwzMTQuMS02NjEuOSwzMTQuMUM0NTYsMTgxMi42LDM2Ni40LDE3ODAuNCwzNjYuNCwxNzgwLjRMMzY2LjQsMTc4MC40CglMMzY2LjQsMTc4MC40eiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMjE5OC40LDE4MDAuNGM2Ny43LTExNi44LTMwMC45LTQ1Ni44LTgyMy03NTkuNVMzNzQuNCw1ODcuOCwzMDYuOCw3MDQuN3MzMDAuOSw0NTYuOCw4MjMuMyw3NTkuNQoJUzIxMzAuNywxOTE3LjQsMjE5OC40LDE4MDAuNHogTTM1MS42LDc0OS44Yy0xMC0yMy43LDExLjEtMjkuNCwxMS4xLTI5LjRjOTMuNS0xNy42LDIyNC43LDIyLjYsMjI0LjcsMjIuNgoJYzM1Ny4yLDgxLjMsOTk0LDQ4MC4yLDk5NCw0ODAuMmM0OTAuMywzNDMuMSw1NjUuNSw0OTQuMiw1NzYuOCw1MzcuMWMyLjQsOS4xLTIuMiwxOC42LTEwLjcsMjIuNGMtNTEuMSwyMy40LTE4OC4xLTExLjUtMTg4LjEtMTEuNQoJYy00MjIuMS0xMTMuMi03NTkuNi0zMjAuNS03NTkuNi0zMjAuNWMtMzAzLjMtMTYzLjYtNjAzLjItNDE1LjMtNjAzLjItNDE1LjNjLTIyNy45LTE5MS45LTI0NS0yODUuNC0yNDUtMjg1LjRMMzUxLjYsNzQ5Ljh6Ii8+CjxjaXJjbGUgY2xhc3M9InN0MSIgY3g9IjEyNTAiIGN5PSIxMjUwIiByPSIxMjguNiIvPgo8ZWxsaXBzZSBjbGFzcz0ic3QxIiBjeD0iMTc3Ny4zIiBjeT0iNzU2LjIiIHJ4PSI3NC42IiByeT0iNzcuMiIvPgo8ZWxsaXBzZSBjbGFzcz0ic3QxIiBjeD0iNTUzIiBjeT0iMTAxOC41IiByeD0iNzQuNiIgcnk9Ijc3LjIiLz4KPGVsbGlwc2UgY2xhc3M9InN0MSIgY3g9IjEwOTguMiIgY3k9IjE5NjUiIHJ4PSI3NC42IiByeT0iNzcuMiIvPgo8L3N2Zz4K
0 commit comments