{"_id":"@decent.xyz/hardhat-decent-bridge","_rev":"5-21cf08957937d3815b98e6d2bf1bd48a","name":"@decent.xyz/hardhat-decent-bridge","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@decent.xyz/hardhat-decent-bridge","version":"1.0.0","keywords":[],"author":"","license":"ISC","_id":"@decent.xyz/hardhat-decent-bridge@1.0.0","maintainers":[{"name":"edricy","email":"yu.edric@gmail.com"},{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},{"name":"wkantaros","email":"willkantaros@decent.xyz"},{"name":"zev2axa","email":"zev@decent.xyz"},{"name":"cdsiren","email":"charlie@decent.xyz"},{"name":"decentxyz","email":"team@decent.xyz"}],"dist":{"shasum":"b5ede85583dc089a40f17502a10c9b5b35876a9d","tarball":"https://registry.npmjs.org/@decent.xyz/hardhat-decent-bridge/-/hardhat-decent-bridge-1.0.0.tgz","fileCount":2301,"integrity":"sha512-KruGaB4rwqSdkzfhV2iDUIFAqPWJzH31WgDRQo7tqyK85c6g8IZVxsFP1K2ila76sRgFYQhwvFLXY7sRI5SrLw==","signatures":[{"sig":"MEUCIF0Pht42arRrx26owylkK51xB4jeJ+E0KKJ1mihCoXgIAiEAj5jtrfyZryrNo/cDZsQYWh49evjaIRZGVS63jatjiEY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39667808},"_from":"file:decent.xyz-hardhat-decent-bridge-1.0.0.tgz","scripts":{"task":"hardhat","test":"echo \"Error: no test specified\" && exit 1","build":"tsup src/hardhat/index.ts --format cjs --clean --minify --metafile","deploy":"forge script script/Counter.s.sol --rpc-url $RPC_URL --broadcast --private-key $DEPLOYER_PRIVATE_KEY -v && forge-deploy sync;","compile":"forge-deploy gen-deployer && forge build","publish:package":"pnpm run build && pnpm pack && pnpm publish --access public"},"_npmUser":{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},"_resolved":"/private/var/folders/3s/r89s0g0d3hxd_ryk4f3z38c00000gn/T/01db3f4f1ac269c240a58e823a9425c3/decent.xyz-hardhat-decent-bridge-1.0.0.tgz","_integrity":"sha512-KruGaB4rwqSdkzfhV2iDUIFAqPWJzH31WgDRQo7tqyK85c6g8IZVxsFP1K2ila76sRgFYQhwvFLXY7sRI5SrLw==","_npmVersion":"9.8.1","description":"This project hosts the contracts that power the Decent bridge. It's built using LayerZero's OFT contracts.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"viem":"^1.19.3","dotenv":"^16.3.1","hardhat":"^2.19.1","shelljs":"^0.8.5","ts-node":"^10.9.1","typescript":"^5.3.2","@types/shelljs":"^0.8.15","@decent.xyz/box-common":"^1.0.15","@nomicfoundation/hardhat-viem":"^1.0.1","@arshankhanifar/houndry-toolkit":"^1.0.18"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","prettier":"^3.0.3","forge-deploy":"^0.2.0","prettier-plugin-solidity":"^1.1.3"},"_npmOperationalInternal":{"tmp":"tmp/hardhat-decent-bridge_1.0.0_1701973231358_0.39442171186102204","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@decent.xyz/hardhat-decent-bridge","version":"1.0.1","keywords":[],"author":"","license":"ISC","_id":"@decent.xyz/hardhat-decent-bridge@1.0.1","maintainers":[{"name":"edricy","email":"yu.edric@gmail.com"},{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},{"name":"wkantaros","email":"willkantaros@decent.xyz"},{"name":"zev2axa","email":"zev@decent.xyz"},{"name":"cdsiren","email":"charlie@decent.xyz"},{"name":"decentxyz","email":"team@decent.xyz"}],"dist":{"shasum":"4a75ac4b44f0c34938892bc6f85fd074966d43d1","tarball":"https://registry.npmjs.org/@decent.xyz/hardhat-decent-bridge/-/hardhat-decent-bridge-1.0.1.tgz","fileCount":2301,"integrity":"sha512-JfNvhYhn3QcKSSNuBgueD2vRQM989BWxJfAfmiZO4G8Ie4BuK9zmaT46TrDObUsOcPBX1LBOCWV1Vytl8mD+VA==","signatures":[{"sig":"MEUCIQDQYZGH+e3A8BLdgli7bJ28KqDx9p2T6x5qBFS4aOmtIgIgFpUq8O7u7wYHlLtDgm9RGuoGV2McducnvMIyTU2+GL4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39667804},"_from":"file:decent.xyz-hardhat-decent-bridge-1.0.1.tgz","scripts":{"task":"hardhat","test":"echo \"Error: no test specified\" && exit 1","build":"tsup src/hardhat/index.ts --format cjs --clean --minify --metafile","deploy":"forge script script/Counter.s.sol --rpc-url $RPC_URL --broadcast --private-key $DEPLOYER_PRIVATE_KEY -v && forge-deploy sync;","compile":"forge-deploy gen-deployer && forge build","publish:package":"pnpm run build && pnpm pack && pnpm publish --access public"},"_npmUser":{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},"_resolved":"/private/var/folders/3s/r89s0g0d3hxd_ryk4f3z38c00000gn/T/526df42884f5b4c17a648153443b7bef/decent.xyz-hardhat-decent-bridge-1.0.1.tgz","_integrity":"sha512-JfNvhYhn3QcKSSNuBgueD2vRQM989BWxJfAfmiZO4G8Ie4BuK9zmaT46TrDObUsOcPBX1LBOCWV1Vytl8mD+VA==","_npmVersion":"9.8.1","description":"This project hosts the contracts that power the Decent bridge. It's built using LayerZero's OFT contracts.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"viem":"^1.19.3","dotenv":"^16.3.1","hardhat":"^2.19.1","shelljs":"^0.8.5","ts-node":"^10.9.1","typescript":"^5.3.2","@types/shelljs":"^0.8.15","@decent.xyz/box-common":"^1.0.15","@decent.xyz/houndry-toolkit":"^1.0.18","@nomicfoundation/hardhat-viem":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","prettier":"^3.0.3","forge-deploy":"^0.2.0","prettier-plugin-solidity":"^1.1.3"},"_npmOperationalInternal":{"tmp":"tmp/hardhat-decent-bridge_1.0.1_1701973797000_0.017409398454316882","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@decent.xyz/hardhat-decent-bridge","version":"1.0.2","keywords":[],"author":"","license":"ISC","_id":"@decent.xyz/hardhat-decent-bridge@1.0.2","maintainers":[{"name":"edricy","email":"yu.edric@gmail.com"},{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},{"name":"wkantaros","email":"willkantaros@decent.xyz"},{"name":"zev2axa","email":"zev@decent.xyz"},{"name":"cdsiren","email":"charlie@decent.xyz"},{"name":"decentxyz","email":"team@decent.xyz"}],"dist":{"shasum":"0f4c1c5f66564a5028f3bd6ec594719ada71718d","tarball":"https://registry.npmjs.org/@decent.xyz/hardhat-decent-bridge/-/hardhat-decent-bridge-1.0.2.tgz","fileCount":2303,"integrity":"sha512-LLiMxww2XqhXiF4XLGOiIeeGD5FTx40moeKHsp3CkjGmoL64wPRuH9/VpTYB1OpikQjC92VrEsSHyWkyeJc+gg==","signatures":[{"sig":"MEUCIQDJH7gKAXp7i2f3RMdwurxdaQAM9PKD/BovE/htwvYPwgIgI4JHntKx6JAZmjgsUiMKogOOqWT2UFoaAtp+90nirGg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39679296},"main":"dist/index.js","_from":"file:decent.xyz-hardhat-decent-bridge-1.0.2.tgz","scripts":{"task":"hardhat","test":"echo \"Error: no test specified\" && exit 1","build":"tsup src/hardhat/index.ts --format cjs --clean --minify --metafile","deploy":"forge script script/Counter.s.sol --rpc-url $RPC_URL --broadcast --private-key $DEPLOYER_PRIVATE_KEY -v && forge-deploy sync;","compile":"forge-deploy gen-deployer && forge build","publish:package":"pnpm run build && pnpm pack && pnpm publish --access public"},"_npmUser":{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},"_resolved":"/private/var/folders/3s/r89s0g0d3hxd_ryk4f3z38c00000gn/T/5364c6b9eb967c6ae291bf4fd1817711/decent.xyz-hardhat-decent-bridge-1.0.2.tgz","_integrity":"sha512-LLiMxww2XqhXiF4XLGOiIeeGD5FTx40moeKHsp3CkjGmoL64wPRuH9/VpTYB1OpikQjC92VrEsSHyWkyeJc+gg==","_npmVersion":"9.8.1","description":"This project hosts the contracts that power the Decent bridge. It's built using LayerZero's OFT contracts.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"viem":"^1.19.3","dotenv":"^16.3.1","hardhat":"^2.19.1","shelljs":"^0.8.5","ts-node":"^10.9.1","typescript":"^5.3.2","@types/shelljs":"^0.8.15","@decent.xyz/box-common":"^1.0.15","@decent.xyz/houndry-toolkit":"^1.0.18","@nomicfoundation/hardhat-viem":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","prettier":"^3.0.3","forge-deploy":"^0.2.0","prettier-plugin-solidity":"^1.1.3"},"_npmOperationalInternal":{"tmp":"tmp/hardhat-decent-bridge_1.0.2_1701975547441_0.19263973961856573","host":"s3://npm-registry-packages"}},"1.0.3":{"name":"@decent.xyz/hardhat-decent-bridge","version":"1.0.3","keywords":[],"author":"","license":"ISC","_id":"@decent.xyz/hardhat-decent-bridge@1.0.3","maintainers":[{"name":"edricy","email":"yu.edric@gmail.com"},{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},{"name":"wkantaros","email":"willkantaros@decent.xyz"},{"name":"zev2axa","email":"zev@decent.xyz"},{"name":"cdsiren","email":"charlie@decent.xyz"},{"name":"decentxyz","email":"team@decent.xyz"}],"dist":{"shasum":"a582b99cb2f35a1d7348de4d3e5eee5da1842f64","tarball":"https://registry.npmjs.org/@decent.xyz/hardhat-decent-bridge/-/hardhat-decent-bridge-1.0.3.tgz","fileCount":2303,"integrity":"sha512-q6mG3/NMJWGC7555VJhuQNbSGNawjN1R+ZlB+AspCaTaE/MbT8edhv2A7Kl0lzNyfMRN+F7qUfGrsYZjS1bs2w==","signatures":[{"sig":"MEUCIQCEw2SZgmXImfddNcuaSMgb0YiblJnaj0DTezL889GkIAIgRAFgPEMn/nP86vd2tZZ7F8xbLvcHBR8fP/hfrTOFcHw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39674355},"main":"dist/index.js","_from":"file:decent.xyz-hardhat-decent-bridge-1.0.3.tgz","scripts":{"task":"hardhat","test":"echo \"Error: no test specified\" && exit 1","build":"tsup src/hardhat/index.ts --format cjs --clean --minify --metafile","deploy":"forge script script/Counter.s.sol --rpc-url $RPC_URL --broadcast --private-key $DEPLOYER_PRIVATE_KEY -v && forge-deploy sync;","compile":"forge-deploy gen-deployer && forge build","publish:package":"pnpm run build && pnpm pack && pnpm publish --access public"},"_npmUser":{"name":"arshankhanifar","email":"arshankhanifar@gmail.com"},"_resolved":"/private/var/folders/3s/r89s0g0d3hxd_ryk4f3z38c00000gn/T/c24bfc3e005f7610bec3774786e666e4/decent.xyz-hardhat-decent-bridge-1.0.3.tgz","_integrity":"sha512-q6mG3/NMJWGC7555VJhuQNbSGNawjN1R+ZlB+AspCaTaE/MbT8edhv2A7Kl0lzNyfMRN+F7qUfGrsYZjS1bs2w==","_npmVersion":"9.8.1","description":"This project hosts the contracts that power the Decent bridge. It's built using LayerZero's OFT contracts.","directories":{},"_nodeVersion":"18.18.2","dependencies":{"viem":"^1.19.3","dotenv":"^16.3.1","hardhat":"^2.19.1","shelljs":"^0.8.5","ts-node":"^10.9.1","typescript":"^5.3.2","@types/shelljs":"^0.8.15","@decent.xyz/box-common":"^1.0.15","@nomicfoundation/hardhat-viem":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.1","prettier":"^3.0.3","forge-deploy":"^0.2.0","prettier-plugin-solidity":"^1.1.3"},"peerDependencies":{"@decent.xyz/houndry-toolkit":"^1.0.18"},"_npmOperationalInternal":{"tmp":"tmp/hardhat-decent-bridge_1.0.3_1701976572228_0.4332250853016928","host":"s3://npm-registry-packages"}}},"time":{"created":"2023-12-07T18:20:31.168Z","modified":"2025-12-09T18:40:24.429Z","1.0.0":"2023-12-07T18:20:32.247Z","1.0.1":"2023-12-07T18:29:57.595Z","1.0.2":"2023-12-07T18:59:07.941Z","1.0.3":"2023-12-07T19:16:12.910Z"},"license":"ISC","keywords":[],"description":"This project hosts the contracts that power the Decent bridge. It's built using LayerZero's OFT contracts.","maintainers":[{"email":"charlie@decent.xyz","name":"cdsiren"},{"email":"itservices@moonpay.com","name":"npmitservices"}],"readme":"# Decent Bridge\n\nThis project hosts the contracts that power the Decent bridge. It's built\nusing LayerZero's OFT contracts.\n\n## Setup\n\n1. Install [Foundry](https://book.getfoundry.sh/getting-started/installation#using-foundryup).\n2. Install packages:\n\n```\nforge install\n```\n\n3. Make sure you have money on both Sepolia and FTM. Here are two generous\n   faucets for this:\n\n   1. [Alchemy's Sepolia Faucet](https://sepoliafaucet.com/)\n   2. [Fantom's testnet faucet](https://faucet.fantom.network/)\n\n4. (On Mac OS) Sometimes, MacOS by default has some wack version of\n   `make` installed. You can easily install the correct version with:\n\n```bash\nbrew install make # binary's called gmake\n```\n\nThen you have to alias it in your rc file. Add this line to the bottom of\nyour rcfile: That's `~/.zshrc` if you're using zsh, and it's `~/.bashrc` if\nyou're using bash. You can check which shell you're using with `echo $SHELL`.\n\n```bash\nalias make=\"gmake\"\n```\n\n# Deploying Contracts\n\nTo deploy contracts, you need to have a `.env` file in the root of this\nproject. Refer to `.env.example` for reference.\n\nThen, you can deploy contracts with:\n\n```bash\nmake bridge-e2e\n```\n\nRefer to the Makefile for more commands, or to see what `bridge-e2e`\ndoes.\n\n## How does deployment work?\n\n### Deploying the Router\n\nFirst we have to deploy the router contracts. The script for this deployment\nis in [DeployRouter.s.sol](./script/Scripts.s.sol).\n\n### Wiring up Contracts\n\nThe router contract on one chain needs to know about the other contracts\non the target chains. So, we have to wire them up and let them know of\neach other. The [WireUpContracts.s.sol](./script/WireUpContracts.s.sol)\ndoes exactly just that.\n\n### Bridging Tokens\n\nTo bridge tokens, use the [BridgeEth.s.sol](./script/Bridge.s.sol) contract.\n","readmeFilename":"Readme.md"}