
Company News
Jerod Santo Joins Socket as Head of Media
Allow myself to introduce... myself.
@chainsafe/hardhat-plugin-multichain-deploy
Advanced tools
A Hardhat plugin for efficient multichain deployment of Ethereum smart contracts via the Sygma protocol, offering streamlined processes and flexible configurations for blockchain developers.
Unlock the full potential of Hardhat with Sygma: the premier plugin for effortlessly deploying your Ethereum smart contracts across multiple blockchain networks. Leveraging the Sygma protocol, this tool revolutionizes your deployment process, making it efficient, streamlined, and truly multi-chain. With ChainSafe's plugin, you're not just deploying contracts—you're exploring new possibilities within the blockchain ecosystem.
To install, run:
npm install --save-dev @chainsafe/hardhat-plugin-multichain-deploy @buildwithsygma/sygma-sdk-core
For JavaScript users, add this line to your hardhat.config.js:
require("@chainsafe/hardhat-plugin-multichain-deploy");
For TypeScript users, include it in your hardhat.config.ts:
import "@chainsafe/hardhat-plugin-multichain-deploy";
The plugin adds a multichain namespace to the Hardhat Runtime Environment (HRE), introducing new methods for deployment:
async deployMultichain<Abi extends ContractAbi = any>(
contractName: string,
networkArgs: NetworkArguments<Abi>,
options?: DeployOptions
): Promise<{
deploymentInfo: DeploymentInfo[];
receipt: Transaction;
} | void>
async deployMultichainBytecode<Abi extends ContractAbi = any>(
contractBytecode: string,
contractAbi: Abi,
networkArgs: NetworkArguments<Abi>,
options?: DeployOptions
): Promise<{
deploymentInfo: DeploymentInfo[];
receipt: Transaction;
} | void>
contractName: Name of the contract for deployment.contractBytecode: Compiled bytecode of the contract.contractAbi: Contract ABI, detailing methods and structures for interaction.networkArgs: Maps network identifiers to deployment arguments. Refer to NetworkArguments.md for more.options: Optional deployment settings. Details in DeployOptions.md.ADAPTER_ADDRESS: Address of the adapter, facilitating deployment across chains with Sygma. Use this if deploying custom adapters.To utilize the Multichain Deployment plugin, specific settings are required:
multichain namespace: Configures deployment settings.
environment: Defines the Sygma environment. Use Environment from @buildwithsygma/sygma-sdk-core for constants.import { Environment } from "@buildwithsygma/sygma-sdk-core";
const config: HardhatUserConfig = {
// Other configurations...
defaultNetwork: "goerli",
networks: {
sepolia: { ... },
goerli: { ... },
optimisticGoerli: { ... },
},
multichain: {
environment: Environment.TESTNET,
},
};
With the setup complete, let’s deploy an ERC20 contract across multiple chains:
const networkArgs = {
sepolia: {
args: [name, symbol, decimals],
},
goerli: {
args: [name, symbol, decimals],
},
};
const options = {
salt: "0xcafe00000000000000000000000000000000000000000000000000000000cafe",
};
this.hre.multichain.deployMultichain("MySuperToken", networkArgs, options);
To contribute to this project, please see the monorepo readme for guidelines.
FAQs
A Hardhat plugin for efficient multichain deployment of Ethereum smart contracts via the Sygma protocol, offering streamlined processes and flexible configurations for blockchain developers.
We found that @chainsafe/hardhat-plugin-multichain-deploy demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.

Company News
Allow myself to introduce... myself.

Research
/Security News
A Twitch browser extension on Chrome and Firefox forwards users’ live OAuth session tokens through proxies controlled by a Russian bot service.

Security News
Anthropic found biased reasoning and recklessness drove Claude Mythos 5 to publish malware on PyPI and compromise a security vendor.