Official Ethereum Studio project repository. And IDE specially tailored to make it as simple as possible to onboard new users into the Ethereum ecosystem
[ ] Clicking "deploy" should automatically attempt to compile the contract (#211 will also solve this)
[ ] Clicking "deploy" should open popup for configuration options (only if necessary, e.g. Coin contract constructor receives no arguments & sending value to the contract does nothing, so no configuration step is needed)
The core motivation is to simplify the UI & limit the number of actions the user is required to take. Contracts must be compiled & configured before deploying anyway so clicking "deploy" should both compile & display the configure screen if needed (vs. currently clicking "deploy" first just results in a console output: Please compile your contracts before deployment.). No need to "save" the configuration before the deploy step - configure & deploy all in one click. Removing these items from the file tree will also remove the confusion of both files & actions existing in the file explorer.
Describe alternatives you've considered
Auto-deploy contracts on every file save. I'm open to discussing that as an option but for now I think we should avoid an auto-deploy feature. Since deploying a contract resets the state, we should be explicit about that. Having a "deploy" step also provides a learning opportunity to explain how deployment works in Ethereum (i.e. sending the bytecode in the body of an Ethereum transaction... empty recipient field). I feel that any transaction (e.g. contract call or contract deploy) should be triggered by an explicit user action.
Summary
Motivation
The core motivation is to simplify the UI & limit the number of actions the user is required to take. Contracts must be compiled & configured before deploying anyway so clicking "deploy" should both compile & display the configure screen if needed (vs. currently clicking "deploy" first just results in a console output:
Please compile your contracts before deployment.
). No need to "save" the configuration before the deploy step - configure & deploy all in one click. Removing these items from the file tree will also remove the confusion of both files & actions existing in the file explorer.Describe alternatives you've considered
Auto-deploy contracts on every file save. I'm open to discussing that as an option but for now I think we should avoid an auto-deploy feature. Since deploying a contract resets the state, we should be explicit about that. Having a "deploy" step also provides a learning opportunity to explain how deployment works in Ethereum (i.e. sending the bytecode in the body of an Ethereum transaction... empty recipient field). I feel that any transaction (e.g. contract call or contract deploy) should be triggered by an explicit user action.
Additional context