
Product
Introducing Webhook Events for Pull Request Scans
Add real-time Socket webhook events to your workflows to automatically receive pull request scan results and security alerts in real time.
@morpho-labs/v2-deployment
Advanced tools
Morpho v2 chain configurations and contract deployment tools for viem.
npm install @morpho-labs/v2-deployment
# or
bun add @morpho-labs/v2-deployment
The Morpho Ethereum Fork is a development chain that replicates Ethereum mainnet state at a specific block, pre-configured with:
1111
(default)For internal testing and development, use these pre-funded Anvil addresses:
Label | Address | Private Key |
---|---|---|
Alice | 0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266 | 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 |
Bob | 0x70997970C51812dc3A010C7d01b50e0d17dc79C8 | 0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d |
Charlie | 0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC | 0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a |
Dave | 0x90F79bf6EB2c4f870365E785982E1f101E93b906 | 0x7c852118294e51e653712a81e05800f419141751be58f605c371e15141b007a6 |
Eve | 0x15d34AAf54267DB7D7c367839AAf71A00a2C6A65 | 0x47e179ec197488593b187f80a00eb0da91f1b9d0b13f8733639f19c30a34926a |
⚠️ Warning: These are well-known test keys. Never use them on mainnet or with real funds.
import { createPublicClient, http } from 'viem';
import { morphoEthereumFork, createMorphoFork } from '@morpho-labs/v2-deployment';
// Use the pre-configured Morpho fork (chain ID 1111)
const client = createPublicClient({
chain: morphoEthereumFork,
transport: http('https://rpc.tenderly.co/fork/your-fork-id')
});
// Or create a custom fork configuration
const customFork = createMorphoFork({
forkUrl: 'https://rpc.tenderly.co/fork/custom-fork-id',
chainId: 2222
});
// Using with Anvil (local development)
const anvilClient = createPublicClient({
chain: morphoEthereumFork,
transport: http('http://127.0.0.1:8545')
});
.env.local
file:TENDERLY_FORK_RPC_URL=https://rpc.tenderly.co/fork/your-fork-id
PRIVATE_KEY=0x...
bun run deploy:status
# List available contracts
bun run contracts:list
# Deploy a specific contract
bun run deploy:terms
# or
bun run scripts/deploy.ts deploy Terms
# Deploy all contracts
bun run deploy:all
# Extract addresses from existing broadcasts
bun run deploy:extract
bun run deploy:extract Terms # Generate ABI + addresses for Terms
deploy <contract>
- Deploy a specific contract to Tenderly forkdeploy-all
- Deploy all available contractslist
- Show available contracts and descriptionsextract [contract]
- Parse deployment info from broadcast filesstatus
- Check environment setup and connectivityThe extract
command is useful for parsing existing Foundry broadcast files:
# View all deployments from broadcast files
bun run scripts/deploy.ts extract
# Extract specific contract and generate TypeScript files
bun run scripts/deploy.ts extract Terms
# Extract from specific chain ID
bun run scripts/deploy.ts extract --chain 1111
This reads the broadcast/Deploy.s.sol/{chainId}/run-latest.json
file and:
src/abis/
src/deployments/addresses.ts
import { setupMorphoFork, getMorphoForkAddresses } from '@morpho-labs/v2-deployment';
import { addressesRegistry } from '@morpho-org/blue-sdk';
// Setup Morpho fork with mainnet data (addresses, deployments, tokens)
setupMorphoFork(1111); // Chain ID for your Tenderly fork
// Get typed addresses for the fork
const addresses = getMorphoForkAddresses(1111);
console.log('Morpho address:', addresses.morpho);
// Access through blue-sdk registry
const morphoAddress = addressesRegistry[1111].morpho;
The deployment system generates:
src/abis/{contract}.ts
- TypeScript ABI definitionssrc/deployments/addresses.ts
- Deployment registry with metadataExample generated address file:
export const deployments = {
1111: {
"terms": {
"address": "0x1234567890123456789012345678901234567890" as Address,
"deploymentBlock": 23168920n,
"deployer": "0x9876543210987654321098765432109876543210" as Address,
"deployedAt": "2025-08-18T19:11:30.000Z"
}
}
} as const;
# Install dependencies
bun install
# Build the project
bun run build
# Run tests
bun test
# Lint and format
bun run check:fix
# Build contracts
forge build
# Run tests
forge test
# Format code
forge fmt
# Gas snapshots
forge snapshot
FAQs
Morpho v2 chain configurations for viem
We found that @morpho-labs/v2-deployment demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Add real-time Socket webhook events to your workflows to automatically receive pull request scan results and security alerts in real time.
Research
The Socket Threat Research Team uncovered malicious NuGet packages typosquatting the popular Nethereum project to steal wallet keys.
Product
A single platform for static analysis, secrets detection, container scanning, and CVE checks—built on trusted open source tools, ready to run out of the box.