1"use strict";(self.webpackChunkcosmwasm_documentation=self.webpackChunkcosmwasm_documentation||[]).push([["6024"],{9752(t,e,n){n.r(e),n.d(e,{metadata:()=>o,default:()=>u,frontMatter:()=>r,contentTitle:()=>s,toc:()=>d,assets:()=>c});var o=JSON.parse('{"id":"ibc/introduction","title":"Introduction","description":"IBC is a standard that defines how blockchains can send and receive messages to each other.","source":"@site/docs/ibc/introduction.md","sourceDirName":"ibc","slug":"/ibc/introduction","permalink":"/ibc/introduction","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedAt":1759826769000,"frontMatter":{},"sidebar":"tutorialSidebar","previous":{"title":"Integration","permalink":"/wasmd/integration/"},"next":{"title":"Getting started","permalink":"/ibc/getting-started"}}'),i=n(4848),a=n(8453);let r={},s="Introduction",c={},d=[];function l(t){let e={a:"a",h1:"h1",header:"header",p:"p",...(0,a.R)(),...t.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(e.header,{children:(0,i.jsx)(e.h1,{id:"introduction",children:"Introduction"})}),"\n",(0,i.jsx)(e.p,{children:"IBC is a standard that defines how blockchains can send and receive messages to each other.\nThis allows for the creation of a network of blockchains that can interact with each other."}),"\n",(0,i.jsxs)(e.p,{children:["You can use the IBC protocol as a building block to create your own custom protocols on top of it,\nbut you can also use existing protocols like the ",(0,i.jsx)(e.a,{href:"https://github.com/cosmos/ibc/blob/main/spec/app/ics-020-fungible-token-transfer/README.md",children:"ICS-20 token transfer protocol"}),". In the following\nsections, we will explain how both of these work. Using CosmWasm for this gives you a key advantage\nover writing a custom Cosmos SDK module in Go: you can easily deploy and upgrade your contract\nwithout having to go through a full chain upgrade (on multiple chains, mind you)."]})]})}function u(t={}){let{wrapper:e}={...(0,a.R)(),...t.components};return e?(0,i.jsx)(e,{...t,children:(0,i.jsx)(l,{...t})}):l(t)}},8453(t,e,n){n.d(e,{R:()=>r,x:()=>s});var o=n(6540);let i={},a=o.createContext(i);function r(t){let e=o.useContext(a);return o.useMemo(function(){return"function"==typeof t?t(e):{...e,...t}},[e,t])}function s(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(i):t.components||i:r(t.components),o.createElement(a.Provider,{value:e},t.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.