{"version":1,"pages":[{"id":"5ar7NGxEWtFnv4KmgoGR","title":"Introduction","pathname":"/evm-xcm-jungle-toolkit","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4d7"},{"id":"gcAWiwEzEFG5tlTc2x9I","title":"What is the EVM-XCM Jungle Toolkit?","pathname":"/evm-xcm-jungle-toolkit/introduction/what-is-the-evm-xcm-jungle-toolkit","siteSpaceId":"sitesp_GJ5sx","emoji":"1f334","description":"The EVM-XCM Jungle Toolkit is a collection of several tools, guides, libraries & code snippets allowing developers to create more easily modern cross-chain Polkadot-based dApps leveraging EVM.","breadcrumbs":[{"label":"Introduction","emoji":"1f4d7"}]},{"id":"9v71RFjKH0ox8mJJ2ICP","title":"Why use this toolkit?","pathname":"/evm-xcm-jungle-toolkit/introduction/why-use-this-toolkit","siteSpaceId":"sitesp_GJ5sx","emoji":"1f9d0","description":"The Jungle Toolkit allows developers to easily connect tools that have never been connected before, pushing the boundaries of what cross-chain dApps on Polkadot are really capable of.","breadcrumbs":[{"label":"Introduction","emoji":"1f4d7"}]},{"id":"MXul7TbiisIaNXBczamI","title":"Who is this toolkit made for?","pathname":"/evm-xcm-jungle-toolkit/introduction/who-is-this-toolkit-made-for","siteSpaceId":"sitesp_GJ5sx","emoji":"1f46a","description":"This toolkit has been created while keeping in mind the importance of simplicity. An intermediate understanding of blockchain development is still required to fully master this material.","breadcrumbs":[{"label":"Introduction","emoji":"1f4d7"}]},{"id":"wcOVZaNgwLeeoXYqsil5","title":"What tools are this toolkit made of?","pathname":"/evm-xcm-jungle-toolkit/introduction/what-tools-are-this-toolkit-made-of","siteSpaceId":"sitesp_GJ5sx","emoji":"2692","description":"The Jungle Toolkit is created using a large number of amazing tools and technologies. Our goal is to connect libraries, SDK & blockchains, both from the EVM & DOT worlds.","breadcrumbs":[{"label":"Introduction","emoji":"1f4d7"}]},{"id":"JUlywx7SlNwZYYAb6lGd","title":"Build an EVM+Substrate wallet compatible architecture in your dApp","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp","siteSpaceId":"sitesp_GJ5sx","emoji":"2194","description":"In this section of the toolkit, we'll start with the basics. We'll explore EVM & Substrate wallets specificities by highlighting great wallets made in the ecosystem."},{"id":"fG9rnSM4qvR2RPcMoatA","title":"Two different standards","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/two-different-standards","siteSpaceId":"sitesp_GJ5sx","emoji":"2049","description":"The Ethereum Virtual Machine (EVM) and Substrate are two different blockchain development frameworks, having their own standards for addresses.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"}]},{"id":"6ZWCeqUtyF5Op0JEb4MD","title":"Addresses Format","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/two-different-standards/addresses-format","siteSpaceId":"sitesp_GJ5sx","emoji":"2139","description":"EVM chains and Substrate chains are using different addresses formats standards. In this section you'll learn how to recognize them.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Two different standards","emoji":"2049"}]},{"id":"KdgQTsNlB9s37GrkBmjs","title":"Public Key vs Hash-based","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/two-different-standards/public-key-vs-hash-based","siteSpaceId":"sitesp_GJ5sx","emoji":"1f3ad","description":"While EVM addresses are only derivated from the public key, Substrate addresses are hash-based.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Two different standards","emoji":"2049"}]},{"id":"6vHUU0XFl8UkONpLn80O","title":"Multichain compatibility","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/two-different-standards/multichain-compatibility","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4e9","description":"While EVM addresses are the same on every chain, Substrate addresses vary depending on the parachain.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Two different standards","emoji":"2049"}]},{"id":"hzfKiXLf7hZ38JStCBTG","title":"Account Types","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/two-different-standards/account-types","siteSpaceId":"sitesp_GJ5sx","emoji":"26a1","description":"While EVM have only 2 types of accounts, there are a variety of possibilities of possibilities on Substrate.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Two different standards","emoji":"2049"}]},{"id":"8hd6BeQ1HjI8V6oYkYXh","title":"Recommended wallets","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/recommended-wallets","siteSpaceId":"sitesp_GJ5sx","emoji":"2611","description":"As we've seen, it's hard not to install a new wallet when you want to create a cross-chain dApp on Polkadot. Perhaps this will soon become a reality, thanks to MetaMask's Snap.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"}]},{"id":"riaTOcb5wEGPdFRIf0Fp","title":"MetaMask","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/recommended-wallets/metamask","siteSpaceId":"sitesp_GJ5sx","emoji":"1f98a","description":"MetaMask is a popular cryptocurrency wallet and browser extension that enables users to interact with dApps on EVM-based chains.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Recommended wallets","emoji":"2611"}]},{"id":"iQQ3oOuqq9o27ZpJfbnh","title":"SubWallet","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/recommended-wallets/subwallet","siteSpaceId":"sitesp_GJ5sx","emoji":"2638","description":"SubWallet is a popular and comprehensive Polkadot, Substrate & Ethereum wallet available both on Mobile and Browser","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Recommended wallets","emoji":"2611"}]},{"id":"yNdtQLZfo8ftPzSYQ3n5","title":"Talisman","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/recommended-wallets/talisman","siteSpaceId":"sitesp_GJ5sx","emoji":"1f91a","description":"Talisman is a stylish multi-chain wallet for web3 that handles natively both EVM and Substrate accounts.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Recommended wallets","emoji":"2611"}]},{"id":"DG9eEuhJgVxGSUCS2qwj","title":"The EVM address standard","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-evm-address-standard","siteSpaceId":"sitesp_GJ5sx","emoji":"1f7e2","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"}]},{"id":"oUaqBLpHmxXepgjtcjiJ","title":"Get an address for a Signer","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-evm-address-standard/get-an-address-for-a-signer","siteSpaceId":"sitesp_GJ5sx","emoji":"1f50f","description":"In this section we'll explain how to get a public EVM address from a wallet using different methods","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The EVM address standard","emoji":"1f7e2"}]},{"id":"CWA4Gbtri3cbC1SyCwkY","title":"Check the validity of the address","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-evm-address-standard/get-an-address-for-a-signer/check-the-validity-of-the-address","siteSpaceId":"sitesp_GJ5sx","emoji":"1f441","description":"In this section we'll check the validity of an EVM address using ethers","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The EVM address standard","emoji":"1f7e2"},{"label":"Get an address for a Signer","emoji":"1f50f"}]},{"id":"4cAKyQUMP1WgEdTF2QuV","title":"Get the native balance of a Signer","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-evm-address-standard/get-the-native-balance-of-a-signer","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4b0","description":"In this section we'll learn how to get the native balance for a Signer using ethers","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The EVM address standard","emoji":"1f7e2"}]},{"id":"pnz2yJ0qqP73YzPMcZtF","title":"Get an ERC20 token's balance","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-evm-address-standard/get-the-native-balance-of-a-signer/get-an-erc20-tokens-balance","siteSpaceId":"sitesp_GJ5sx","description":"In this section we'll learn how to get the ERC20 balance for an account using ethers.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The EVM address standard","emoji":"1f7e2"},{"label":"Get the native balance of a Signer","emoji":"1f4b0"}]},{"id":"Vr3dqWWeeWlO93kMcN7P","title":"Get the chain information for a Signer","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-evm-address-standard/get-the-chain-information-for-a-signer","siteSpaceId":"sitesp_GJ5sx","emoji":"1f387","description":"Learn how to use ethers to query some basic EVM-network information","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The EVM address standard","emoji":"1f7e2"}]},{"id":"26k4XqBek916YbNBK9Ie","title":"The Substrate address standard","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-substrate-address-standard","siteSpaceId":"sitesp_GJ5sx","emoji":"1f535","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"}]},{"id":"jEHFUz0Ws4tvXGK1qd3U","title":"Get an address for a Signer","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-substrate-address-standard/get-an-address-for-a-signer","siteSpaceId":"sitesp_GJ5sx","emoji":"1f50f","description":"In this section we'll explain how to get a Substrate address from a wallet connected using Talisman","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The Substrate address standard","emoji":"1f535"}]},{"id":"JYnZOeRTgVWrM2ouY6Vg","title":"Check the validity of the address","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-substrate-address-standard/get-an-address-for-a-signer/check-the-validity-of-the-address","siteSpaceId":"sitesp_GJ5sx","emoji":"1f441","description":"In this section we'll check the validity of an EVM address using polkadot.js API dependencies","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The Substrate address standard","emoji":"1f535"},{"label":"Get an address for a Signer","emoji":"1f50f"}]},{"id":"MRDwnSE461otoV0zIoXe","title":"Get the native balance of a Signer","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-substrate-address-standard/get-the-native-balance-of-a-signer","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4b0","description":"In this section we'll learn how to get the native balance for a Signer using polkadot.js API","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The Substrate address standard","emoji":"1f535"}]},{"id":"6FBJkZDD1QCnz94xr85r","title":"Get the chain information for a Signer","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/the-substrate-address-standard/get-the-chain-information-for-a-signer","siteSpaceId":"sitesp_GJ5sx","emoji":"1f387","description":"In this section we'll learn how to get the some basic network information using polkadot.js API","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"The Substrate address standard","emoji":"1f535"}]},{"id":"ontDXnPGi9Zk8LXHSp4q","title":"Mapping of addresses","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/mapping-of-addresses","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4e7","description":"In this section you'll see how to create a proper Solidity mapping linking two addresses (EVM/Substrate).","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"}]},{"id":"WdyyJPg28S2noygNkCUD","title":"Implement multiple wallet support on your dApp front-end","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/implement-multiple-wallet-support-on-your-dapp-front-end","siteSpaceId":"sitesp_GJ5sx","emoji":"1f91d","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"}]},{"id":"wy0OGP3pquiIxGNT7OUS","title":"Understanding the EVM provider/signer concepts","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/implement-multiple-wallet-support-on-your-dapp-front-end/understanding-the-evm-provider-signer-concepts","siteSpaceId":"sitesp_GJ5sx","emoji":"1f49a","description":"In this section you'll learn what a provider and a signer are and how to use them.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Implement multiple wallet support on your dApp front-end","emoji":"1f91d"}]},{"id":"PjXfux3VgPuqmgVqmi2K","title":"Understanding the Keyring concept","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/implement-multiple-wallet-support-on-your-dapp-front-end/understanding-the-keyring-concept","siteSpaceId":"sitesp_GJ5sx","emoji":"2764","description":"A keyring is a mechanism for managing cryptographic key pairs.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Implement multiple wallet support on your dApp front-end","emoji":"1f91d"}]},{"id":"ymndC6g1c2UniaNyH6CH","title":"Sign and send EVM transactions","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/implement-multiple-wallet-support-on-your-dapp-front-end/sign-and-send-evm-transactions","siteSpaceId":"sitesp_GJ5sx","emoji":"1f511","description":"In this section you'll use a provider, a signer, a contract ABI and a contract Instance to send a transaction using ethers.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Implement multiple wallet support on your dApp front-end","emoji":"1f91d"}]},{"id":"KPbMxKdB4VJtX1xYLzf7","title":"Sign and send Substrate extrinsics","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/implement-multiple-wallet-support-on-your-dapp-front-end/sign-and-send-substrate-extrinsics","siteSpaceId":"sitesp_GJ5sx","emoji":"1f5dd","description":"In this section you'll use a keyring to sign an extrinsic.","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"},{"label":"Implement multiple wallet support on your dApp front-end","emoji":"1f91d"}]},{"id":"IrR1AyGnhxGnhaBEm4tV","title":"Ressources","pathname":"/evm-xcm-jungle-toolkit/build-an-evm+substrate-wallet-compatible-architecture-in-your-dapp/ressources","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4da","description":"Some ressources to dig further into accounts differences between EVM and Substrate","breadcrumbs":[{"label":"Build an EVM+Substrate wallet compatible architecture in your dApp","emoji":"2194"}]},{"id":"A9iR0BRIEjwSRxVOLNV2","title":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm","siteSpaceId":"sitesp_GJ5sx","emoji":"27a1"},{"id":"MD1EWJGlfsgg0JXV4rkF","title":"Understanding the flow","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm/understanding-the-flow","siteSpaceId":"sitesp_GJ5sx","emoji":"2049","description":"In this section we will explain how to move any tokens from popular EVM chains to Moonbeam through Squid SDK.","breadcrumbs":[{"label":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","emoji":"27a1"}]},{"id":"yPQMVx8OEcMSINMP4fjd","title":"Transfer tokens to Moonbeam Parachain using Squid SDK from any EVM chain","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm/transfer-tokens-to-moonbeam-parachain-using-squid-sdk-from-any-evm-chain","siteSpaceId":"sitesp_GJ5sx","emoji":"1f991","description":"How to leverage Squid router to teleport easily tokens to Moonbeam parachain, the EVM gateway of the Polkadot's ecosystem","breadcrumbs":[{"label":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","emoji":"27a1"}]},{"id":"Chz81bn7vGCLcyM5MiTa","title":"Create & execute a transaction on the source chain before bridging tokens (pre-hook)","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm/create-and-execute-a-transaction-on-the-source-chain-before-bridging-tokens-pre-hook","siteSpaceId":"sitesp_GJ5sx","emoji":"1fa9d","description":"How to add a pre-hook on an EVM chain to a route request towards Moonbeam parachain using Squid SDK","breadcrumbs":[{"label":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","emoji":"27a1"}]},{"id":"ydggVIxRBDh6JYFEAivi","title":"Create & execute a transaction on Moonbeam after bridging tokens (post-hook)","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm/create-and-execute-a-transaction-on-moonbeam-after-bridging-tokens-post-hook","siteSpaceId":"sitesp_GJ5sx","emoji":"1fa9d","description":"How to add a post-hook on Moonbeam parachainn to a route request after a cross-chain swap from an EVM chain using Squid SDK","breadcrumbs":[{"label":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","emoji":"27a1"}]},{"id":"5Et12nGAAJlfo1IttMN2","title":"Create & execute a swap using Stellaswap pools to obtain xcTokens","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm/create-and-execute-a-swap-using-stellaswap-pools-to-obtain-xctokens","siteSpaceId":"sitesp_GJ5sx","emoji":"2728","description":"How to add a post-hook leveraging xcTokens liquidity pools available on Moonbeam parachain to a route request after a cross-chain swap from an EVM chain using Squid SDK","breadcrumbs":[{"label":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","emoji":"27a1"}]},{"id":"Kq0g2Vqyh81lpKr6tiXo","title":"Wrap-up","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm/wrap-up","siteSpaceId":"sitesp_GJ5sx","emoji":"1f64c","breadcrumbs":[{"label":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","emoji":"27a1"}]},{"id":"kpAdq67jeKhUcrHe9j38","title":"Ressources","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-any-evm-chain-to-a-substrate-based-chain-using-ibc-and-xcm/ressources","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4da","breadcrumbs":[{"label":"Build a cross-chain transaction from any EVM-chain to a Substrate-based chain using IBC and XCM","emoji":"27a1"}]},{"id":"SZyR96ptknfocXXRZsV6","title":"Build a cross-chain transaction from a Substrate-based chain to Moonbeam chain","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-a-substrate-based-chain-to-moonbeam-chain","siteSpaceId":"sitesp_GJ5sx","emoji":"2b05"},{"id":"nyCzNV4W8IRtRbayfTs5","title":"Understanding the flow","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-a-substrate-based-chain-to-moonbeam-chain/understanding-the-flow","siteSpaceId":"sitesp_GJ5sx","emoji":"2049","description":"In this section we will explain how to move any native Substrate based token to any EVM chain by using Moonbeam as a middle-man parachain to access EVM liquidities through Squid.","breadcrumbs":[{"label":"Build a cross-chain transaction from a Substrate-based chain to Moonbeam chain","emoji":"2b05"}]},{"id":"i0YzWCQ0qqswFS2tPa32","title":"Using LightSpell API to generate valid XCM calls","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-a-substrate-based-chain-to-moonbeam-chain/using-lightspell-api-to-generate-valid-xcm-calls","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4a1","description":"To move assets between a parachain to another parachain or directly to the relay chain, we need to sign an extrinsic to create a proper XCM message","breadcrumbs":[{"label":"Build a cross-chain transaction from a Substrate-based chain to Moonbeam chain","emoji":"2b05"}]},{"id":"DrVAKfjrr282lTGNJApK","title":"Transfer tokens between parachains (or relay chain) using XCM and ParaSpell SDK","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-a-substrate-based-chain-to-moonbeam-chain/transfer-tokens-between-parachains-or-relay-chain-using-xcm-and-paraspell-sdk","siteSpaceId":"sitesp_GJ5sx","emoji":"1f309","description":"In this section you'll learn how to send tokens from any Substrate chains to Moonbeam","breadcrumbs":[{"label":"Build a cross-chain transaction from a Substrate-based chain to Moonbeam chain","emoji":"2b05"}]},{"id":"p2RHbwBHoErc4PThqKui","title":"Wrap up","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-a-substrate-based-chain-to-moonbeam-chain/wrap-up","siteSpaceId":"sitesp_GJ5sx","emoji":"1f64c","breadcrumbs":[{"label":"Build a cross-chain transaction from a Substrate-based chain to Moonbeam chain","emoji":"2b05"}]},{"id":"2oK9pVK2IoC5eocqwEpz","title":"Ressources","pathname":"/evm-xcm-jungle-toolkit/build-a-cross-chain-transaction-from-a-substrate-based-chain-to-moonbeam-chain/ressources","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4da","breadcrumbs":[{"label":"Build a cross-chain transaction from a Substrate-based chain to Moonbeam chain","emoji":"2b05"}]},{"id":"EtCRdoGwZUo89qblmIvl","title":"Build batches on source and destination chains using Squid and batch precompile","pathname":"/evm-xcm-jungle-toolkit/build-batches-on-source-and-destination-chains-using-squid-and-batch-precompile","siteSpaceId":"sitesp_GJ5sx","emoji":"23e9"},{"id":"SbAUwj55Tnv71pMrBNZ4","title":"Understanding the flow","pathname":"/evm-xcm-jungle-toolkit/build-batches-on-source-and-destination-chains-using-squid-and-batch-precompile/understanding-the-flow","siteSpaceId":"sitesp_GJ5sx","emoji":"2049","breadcrumbs":[{"label":"Build batches on source and destination chains using Squid and batch precompile","emoji":"23e9"}]},{"id":"gI5qpY7fquNkXIbJ10Xs","title":"Understanding the batch precompile","pathname":"/evm-xcm-jungle-toolkit/build-batches-on-source-and-destination-chains-using-squid-and-batch-precompile/understanding-the-batch-precompile","siteSpaceId":"sitesp_GJ5sx","emoji":"1f44c","description":"In this section we'll learn how to make several transactions packed into a bigger one on Moonbeam parachain.","breadcrumbs":[{"label":"Build batches on source and destination chains using Squid and batch precompile","emoji":"23e9"}]},{"id":"pIXsjIUmGoCRWZDP9kCb","title":"Create a batch transaction compatible with Squid router","pathname":"/evm-xcm-jungle-toolkit/build-batches-on-source-and-destination-chains-using-squid-and-batch-precompile/create-a-batch-transaction-compatible-with-squid-router","siteSpaceId":"sitesp_GJ5sx","emoji":"2705","description":"How to generate a proper encoded batch call made of several encoded subcalls","breadcrumbs":[{"label":"Build batches on source and destination chains using Squid and batch precompile","emoji":"23e9"}]},{"id":"gHWAqEWbOLeSanvxeiO1","title":"Integrate a batch into a Hook using Squid","pathname":"/evm-xcm-jungle-toolkit/build-batches-on-source-and-destination-chains-using-squid-and-batch-precompile/integrate-a-batch-into-a-hook-using-squid","siteSpaceId":"sitesp_GJ5sx","emoji":"1fa9d","description":"How to add multiple actions using the batch precompile into a pre-hook on Moonbeam parachain to a route request towards an EVM chain using Squid SDK","breadcrumbs":[{"label":"Build batches on source and destination chains using Squid and batch precompile","emoji":"23e9"}]},{"id":"6X4XuxRaX2jGvtGyMt82","title":"Wrap up","pathname":"/evm-xcm-jungle-toolkit/build-batches-on-source-and-destination-chains-using-squid-and-batch-precompile/wrap-up","siteSpaceId":"sitesp_GJ5sx","emoji":"1f64c","breadcrumbs":[{"label":"Build batches on source and destination chains using Squid and batch precompile","emoji":"23e9"}]},{"id":"wGmZgrxHGgi1zL5ZLcPx","title":"Ressources","pathname":"/evm-xcm-jungle-toolkit/build-batches-on-source-and-destination-chains-using-squid-and-batch-precompile/ressources","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4da","breadcrumbs":[{"label":"Build batches on source and destination chains using Squid and batch precompile","emoji":"23e9"}]},{"id":"58uiBpQBzod63PWb4IlX","title":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit","siteSpaceId":"sitesp_GJ5sx","emoji":"1f501","description":"How to implement gas-less transaction using the callPermit precompile and the EIP-712 standard"},{"id":"4hk443SucrTldjq5bBE3","title":"Understanding the flow","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit/understanding-the-flow","siteSpaceId":"sitesp_GJ5sx","emoji":"2049","description":"The goal of this section is to build a dApp that is capable to dispatch transactions on behalf of its user. In other words, we are here implementing a gas-less flow into our cross-chain dApp.","breadcrumbs":[{"label":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","emoji":"1f501"}]},{"id":"VR9lntvlYhShhN8tJSlZ","title":"Generating the data to sign","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit/generating-the-data-to-sign","siteSpaceId":"sitesp_GJ5sx","emoji":"1f50b","description":"How to generate a properly formatted data using a contract interface particular function","breadcrumbs":[{"label":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","emoji":"1f501"}]},{"id":"9Nfw2fmJEkp1NIxSf7Qh","title":"Collecting the signature","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit/collecting-the-signature","siteSpaceId":"sitesp_GJ5sx","emoji":"270d","description":"Once the data is properly generated, the user has to sign it. We'll then have to determine its r,s and v to dispatch the transaction later.","breadcrumbs":[{"label":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","emoji":"1f501"}]},{"id":"BoDhor9iu9jOkFlwUsid","title":"Relaying the signature","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit/relaying-the-signature","siteSpaceId":"sitesp_GJ5sx","emoji":"1f310","description":"Now it's time to dispatch the transaction","breadcrumbs":[{"label":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","emoji":"1f501"}]},{"id":"LY2ec1V6tMzUKG7es5SI","title":"Executing the transaction","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit/executing-the-transaction","siteSpaceId":"sitesp_GJ5sx","emoji":"26a1","description":"This is pretty straightforward, we can now send the transaction using all the parameters we previously generated.","breadcrumbs":[{"label":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","emoji":"1f501"}]},{"id":"Q4EQmaBlvVxHWRQIcBiv","title":"Wrap up","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit/wrap-up","siteSpaceId":"sitesp_GJ5sx","emoji":"1f64c","breadcrumbs":[{"label":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","emoji":"1f501"}]},{"id":"EewGHfcGyKvjn16R6jp2","title":"Ressources","pathname":"/evm-xcm-jungle-toolkit/build-a-gas-less-transaction-from-to-an-evm-substrate-chain-using-callpermit/ressources","siteSpaceId":"sitesp_GJ5sx","emoji":"1f4da","breadcrumbs":[{"label":"Build a gas-less transaction from/to an EVM/Substrate chain using callPermit","emoji":"1f501"}]},{"id":"IFzPWBXhZQr3nWCOo4KT","title":"Build a custodial solution to make your dApp wallet-less & gas-less using EIP-712","pathname":"/evm-xcm-jungle-toolkit/build-a-custodial-solution-to-make-your-dapp-wallet-less-and-gas-less-using-eip-712","siteSpaceId":"sitesp_GJ5sx","emoji":"1f500"},{"id":"jdOc5vviHtpvjoiT80T6","title":"Understanding the flow","pathname":"/evm-xcm-jungle-toolkit/build-a-custodial-solution-to-make-your-dapp-wallet-less-and-gas-less-using-eip-712/understanding-the-flow","siteSpaceId":"sitesp_GJ5sx","emoji":"2049","description":"In this section we'll learn how to create a custodial solution (smart-contract/front-end/back-end) to be able to make a gas-less / wallet-less dApp","breadcrumbs":[{"label":"Build a custodial solution to make your dApp wallet-less & gas-less using EIP-712","emoji":"1f500"}]},{"id":"dcXmzMQijYOn49H3VYZ8","title":"Smart contract","pathname":"/evm-xcm-jungle-toolkit/build-a-custodial-solution-to-make-your-dapp-wallet-less-and-gas-less-using-eip-712/smart-contract","siteSpaceId":"sitesp_GJ5sx","emoji":"26d3","description":"In this section, we'll look at how to create a smart-contract using Solidity, which will enable the use of mirrors wallets.","breadcrumbs":[{"label":"Build a custodial solution to make your dApp wallet-less & gas-less using EIP-712","emoji":"1f500"}]},{"id":"0TtJaNJRwH7riyNDCOdd","title":"Back end","pathname":"/evm-xcm-jungle-toolkit/build-a-custodial-solution-to-make-your-dapp-wallet-less-and-gas-less-using-eip-712/back-end","siteSpaceId":"sitesp_GJ5sx","emoji":"2699","description":"In order to be able to relay transaction we need a centralized back-end able to relay the transactions on behalf of users.","breadcrumbs":[{"label":"Build a custodial solution to make your dApp wallet-less & gas-less using EIP-712","emoji":"1f500"}]},{"id":"BlhW3gLKTE1r7pkYhkzd","title":"Examples of working cross-chain dApps made using the Jungle Toolkit","pathname":"/evm-xcm-jungle-toolkit/examples-of-working-cross-chain-dapps-made-using-the-jungle-toolkit","siteSpaceId":"sitesp_GJ5sx","emoji":"1f53d"},{"id":"eUJ9cquwgWXbMw1TGg5A","title":"Case Study: The Great Escape","pathname":"/evm-xcm-jungle-toolkit/examples-of-working-cross-chain-dapps-made-using-the-jungle-toolkit/case-study-the-great-escape","siteSpaceId":"sitesp_GJ5sx","emoji":"1f334","breadcrumbs":[{"label":"Examples of working cross-chain dApps made using the Jungle Toolkit","emoji":"1f53d"}]},{"id":"XvaJv6FjPVH0EiGVjT4z","title":"The Player Structure","pathname":"/evm-xcm-jungle-toolkit/examples-of-working-cross-chain-dapps-made-using-the-jungle-toolkit/case-study-the-great-escape/the-player-structure","siteSpaceId":"sitesp_GJ5sx","description":"How the players are stored in our game dApp smart-contract","breadcrumbs":[{"label":"Examples of working cross-chain dApps made using the Jungle Toolkit","emoji":"1f53d"},{"label":"Case Study: The Great Escape","emoji":"1f334"}]},{"id":"b49cbZispwToLzF2eSTa","title":"The xDeposit Function","pathname":"/evm-xcm-jungle-toolkit/examples-of-working-cross-chain-dapps-made-using-the-jungle-toolkit/case-study-the-great-escape/the-xdeposit-function","siteSpaceId":"sitesp_GJ5sx","description":"How we're allowing players to deposit tokens from any chain to their player accounts, without leaving their favorite EVM chain.","breadcrumbs":[{"label":"Examples of working cross-chain dApps made using the Jungle Toolkit","emoji":"1f53d"},{"label":"Case Study: The Great Escape","emoji":"1f334"}]},{"id":"hcSCI8z8Ex9wtoOKeU8o","title":"The xRegister Function","pathname":"/evm-xcm-jungle-toolkit/examples-of-working-cross-chain-dapps-made-using-the-jungle-toolkit/case-study-the-great-escape/the-xregister-function","siteSpaceId":"sitesp_GJ5sx","description":"How we are allowing players to register to the game without having to pay gas","breadcrumbs":[{"label":"Examples of working cross-chain dApps made using the Jungle Toolkit","emoji":"1f53d"},{"label":"Case Study: The Great Escape","emoji":"1f334"}]}]}