Git Product home page Git Product logo

ibc-go's Introduction

ibc-go

banner

The Inter-Blockchain Communication protocol (IBC) allows blockchains to talk to each other. IBC handles transport across different sovereign blockchains. This end-to-end, connection-oriented, stateful protocol provides reliable, ordered, and authenticated communication between heterogeneous blockchains. This IBC implementation in Golang is built as a Cosmos SDK module.

Roadmap

For an overview of upcoming changes to ibc-go take a look at the roadmap.

This roadmap is also available as a project board.

For the latest expected release timelines, please check here.

For the latest information on the progress of the work or the decisions made that might influence the roadmap, please follow our engineering updates.

Releases

The release lines currently supported are v2, v3, v4 and v5.

Please refer to the Stable Release Policy section of RELEASES.md for more details.

Please refer to our versioning guide for more information on how to understand our release versioning.

Ecosystem

Discover the applications, middleware and light clients developed by other awesome teams in the ecosystem:

In the table below app refers to IBC application modules for custom use cases and middleware refers to modules that wrap an IBC application enabling custom logic to be executed.

Description Repository Type
An application that enables on chain querying of another IBC enabled chain utilizing baseapp.Query. Both chains must have implemented the query application and ICA (for queries requiring consensus). ICQ app
An application that enables on chain querying of another IBC enabled chains state without the need for the chain being queried to implement the application. interchain-queries app
An application that enables on chain querying of another IBC enabled chains state without the need for the chain being queried to implement the application. Similar to the interchain-queries application in the row above but without callbacks. query app
An application that enables cross chain NFT transfer. NFT Transfer (ICS 721) app
Middleware enabling a packet to be sent to a destination chain via an intermediate chain, e.g. going from Juno to Osmosis via the Hub. packet-forward-middleware middleware
Middleware enabling the recovery of tokens sent to unsupported addresses. recovery middleware
Middleware that limits the in or out flow of an asset in a certain time period to minimise the risks of cross chain token transfers. IBC-rate-limiting middleware

Support

We have active, helpful communities on Discord and Telegram.

For questions and support please use the developers channel in the Cosmos Network Discord server or join the IBC Gang Discord server. The issue list of this repo is exclusively for bug reports and feature requests.

To receive announcements of new releases or other technical updates, please join the Telegram group that we administer.

Contribution Guidelines & Requests for Maintainership

We have detailed documents for contributors wishing to contribute code to ibc-go or submit a feature for maintainership in the ibc-go codebase. Please note that all maintainers of and contributors to the codebase are subject to the Code of Conduct.

Security

To report a security vulnerability, see our bug bounty program.

Contents of this repo

  1. Core IBC Implementation

    1.1 ICS 02 Client

    1.2 ICS 03 Connection

    1.3 ICS 04 Channel

    1.4 ICS 05 Port

    1.5 ICS 23 Commitment

    1.6 ICS 24 Host

  2. Applications

    2.1 ICS 20 Fungible Token Transfers

    2.2 ICS 27 Interchain Accounts

  3. Light Clients

    3.1 ICS 07 Tendermint

    3.2 ICS 06 Solo Machine

Documentation and Resources

ibc-go's People

Contributors

colin-axner avatar crodriguezvega avatar dependabot[bot] avatar damiannolan avatar chatton avatar seantking avatar charleenfei avatar fedekunze avatar adityasripal avatar faddat avatar anmol1696 avatar catshaark avatar tac0turtle avatar alizahidraja avatar vuong177 avatar daniyal98 avatar tmsdkeys avatar imhunterand avatar renaynay avatar nir1218 avatar raulbernal avatar ramacarlucho avatar nicolaslara avatar allthatjazzleo avatar gnongs avatar ethanfrey avatar calvinaco avatar alexanderbez avatar k-yang avatar laurenskubat avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.