Page 1 of 1
EVM Smart contract deployment workflows: pain points and unmet needs
We're trying to understand where current evm smart contract deployment tools fall short, especially for teams using or evaluating hardhat-deploy. This survey takes less than 5 minutes.
What is missing from current deployment tools for your use case?
What do you build?
*
DeFi / finance
NFT / collectibles
Fully onchain game
Consumer app
Infrastructure / protocol
Other
What project(s) you are working on
What is your main deployment workflow today?
*
A
hardhat-deploy v1
B
forge scripts
C
custom scripts
D
hardhat-deploy v2 / rocketh
E
Hardhat Ignition
F
MUD
G
other
Which of these are part of your current setup?
*
Hardhat Ignition
hardhat-deploy v1
Hardhat 3
Upgradeable contracts / proxies
Hardhat 2
Fully onchain game requirements
MUD framework
Proxy for dev and immutable on mainnet
hardhat-deploy v2 / rocketh
I am actively evaluating alternatives
Multi-contract system
Foundry / forge scripts
Local-first or offline development matters
Frontend needs deployment data synced automatically
Other
Which best describes your hardhat-deploy usage?
*
A
I was not aware v2 existed
B
I know v2 exists but have not looked into it
C
I looked into it but migration cost was too high
D
I tried it and stayed on v1
E
I currently use v2
F
I used hardhat-deploy before, but not now
If you're on hardhat-deploy v1, what keeps you there?
*
It works, no reason to change
Features I rely on aren't in v2 yet
Migration path isn't clear
v2/rocketh API is too different
I wasn't aware v2 existed
Not applicable (I don't use v1)
Other
What matters in your deployment workflow?
*
Speed
Large Contract System Handling (Diamond, MUD world, router, ...)
Recovering from interrupted deployments
Full TypeScript type safety for deployments
Repeatability across environments
Ability to execute deployment in browser
independence of framework (foundry, hardhat) upgrades
Simplicity
Live reload (auto-redeploy on contract changes during dev)
Stability of api
Named accounts / role-based deployment configuration
Deploy tags for partial/selective deployments
Local simulation / local-first workflow
Declarative Proxy Deployment (no manual upgrade specification)
Deterministic deployments
Deployment tracking
Flexibility for deployments
Reusing deployment logic in tests
Faster iteration during development
Contract verification
Mud world contract support
Frontend integration / exporting deployment data
Other
Which best describes your position on Ignition?
*
A
I use it as my main deployment workflow
B
I tried it and did not adopt it
C
I investigated it, but did not try it seriously
D
I know about it, but have not evaluated it
E
It is not really on my radar
F
Other
If Ignition is not your main deployment workflow, why not?
*
Migration cost is too high
I need better support for complex multi-contract systems (Diamonds, MUD world...)
I tried it and it did not feel ready for my use case
I need stronger test and deployment reuse
I need better upgrade / proxy support
I have not spent enough time evaluating it yet
I need better frontend / app integration
I need more flexibility than the current model offers
My current setup already works well enough
Other
In the last few months, what have you spent time investigating as alternatives or changes?
*
no serious investigation recently
custom deployment scripts
Hardhat Ignition
MUD framework
Moving from hardhat-deploy v1 to v2
forge scripts
Other
What frustrates you most about your current setup?
*
Locked into a specific framework's contract architecture
Frontend integration is painful
Test and deployment logic are duplicated
Large multi-contract systems are hard to manage
Deployment state is brittle or gets corrupted
Local development experience is weak
Too much boilerplate
Migration cost is too high
Hard to manage multiple signers/roles across environments
Upgrades / proxies are awkward
Tooling feels incomplete or unstable
Docs / examples are not good enough
Other
Which of these capabilities, if production-ready today, would change how you deploy contracts?
*
Framework-agnostic deployment library (works with Foundry, Hardhat, or any tool)
Foundry test integration
Live reload: contracts redeploy automatically on save during dev
Live reload without being locked into a specific contract architecture
Declarative proxy config (dev proxy → mainnet immutable, no code change)
Run deployments directly in-browser
External deployment import (reference already-deployed contracts by address)
Deployment tracking/state management for forge scripts
Deployment logic that doubles as test fixtures with no duplication
Auto-synced frontend artifacts on every deploy
Declarative Diamond / large contract system management
None of the above
Other
Open to a follow-up conversation?
*
A
Yes
B
No
Submit