Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Remix] Ewasm Plugin #17

Open
yann300 opened this issue Sep 5, 2018 · 11 comments
Open

[Remix] Ewasm Plugin #17

yann300 opened this issue Sep 5, 2018 · 11 comments

Comments

@yann300
Copy link

yann300 commented Sep 5, 2018

Ewasm Plugin

(subject to change)

We've been releasing an API (available in http://remix-alpha.ethereum.org) which allows developing plugin for Remix.
(See https://github.com/ethereum/remix/blob/master/docs/remix_plugin.md and https://github.com/ethereum/remix/blob/master/docs/remix_plugin_api.md)
Checkout https://remix-alpha.ethereum.org / settings tab / Oraclize for a live example.

This issue is specifically about developing a Ewasm Plugin.

Proposal for implementation

(You don't need to strictly follow this proposal, we would like to have your feedback)

  • compile https://webassembly.studio/ from * to wat (easy way to inject the wat in Remix?)
  • from Remix deploy to ewasm test net using the Run tab or directly from the plugin
  • call the fallback function with raw data from Run tab

Team

We are the team behind Remix IDE and related libraries, using this hackathon as a kickstart for the Remix API.
We've setup an extended team for helping you during this event

Beside normal funding, we will at the end of the event select 4 teams that will receive sponsorship from the Ethereum Foundation.

Be sure to contact us at any time online or grab us directly at the event.

Skills wanted

JavaScript / Ethereum

Communication

We will be around giving advice and helping if needed.
And in any case just drop your thoughts there ;)

https://gitter.im/ethereum/remix-dev-plugin

How to get started:

{
“title”: “<name of plugin>”,
“url”: “http://127.0.0.1:<port>”
}
  • Load and Start using it.
@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


This issue now has a funding of 500.0 DAI (500.0 USD @ $1.0/DAI) attached to it.

@gitcoinbot
Copy link

gitcoinbot commented Sep 11, 2018

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work has been started.

These users each claimed they can complete the work by 2 years, 6 months ago.
Please review their action plans below:

1) oogetyboogety has started work.

wlil submit the wasm data in a similar fashion to ewasm-studio
https://github.com/ewasm/ewasm-studio/blob/master/app/src/App.js#L122

will call the fallback function with raw data from Run tab

Learn more on the Gitcoin Issue Details page.

@vs77bb
Copy link

vs77bb commented Sep 14, 2018

Hi @oogetyboogety how is this one going on your side? WIP PR would be helpful to assess progress 🙂

@oogetyboogety
Copy link

Hey @vs77bb pretty much finished with this one. Made changes to three repositories:
https://github.com/oogetyboogety/ewasm-studio-remix
ethereum/remix-ide#1524 (depends on branch here: ethereum/remix-ide#1521)
ethereum/remix#973

Will be assessing the changes with @yann300 now

@vs77bb
Copy link

vs77bb commented Sep 18, 2018

Thanks for the update!

@oogetyboogety
Copy link

oogetyboogety commented Sep 19, 2018

@yann300 @vs77bb
Final plugin here:
https://github.com/oogetyboogety/ewasm-studio-remix
Remember to:

  1. clone remix-ide and checkout #1534 Fix sendCompilationResults API call ethereum/remix-ide#1534

  2. clone remix, checkout #985 Added ldCompilationResults to load external compiler results from a p… ethereum/remix#985,

  3. in remix/remix-lib npm install, npm link, then npm link remix-lib in /remix-ide

  4. in remix/remix-solidity, npm install, npm link, then npm link remix-solidity in /remix-ide

  5. npm install in /remix-ide
    Implemented:

  6. clone ewasm-studio-remix https://github.com/oogetyboogety/ewasm-studio-remix

  7. npm start in /ewasm-studio-remix, npm start in /remix-ide, and start your geth node as illustrated here:
    https://github.com/ewasm/testnet/

  8. load the plugin from the settings tab in remix-ide
    { "title": "ewasm-studio-remix", "url": "http://127.0.0.1:3000" }
    screenshot from 2018-09-18 20-16-41

  • Paste a WAST into a new file, or
  • use remixd to load a WAST file into Remix and open it
  1. Click the Get from remix button
  2. If you haven't checked out the new PRs, set a value and deploy the contract to testnet directly from the plugin
  3. If you have checked out the latest PRs, click the Send to remix button and Deploy from the Run tab
  4. Call the functions fallback function with some arbitrary value

@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work for 500.0 DAI (500.0 USD @ $1.0/DAI) has been submitted by:

  1. @oogetyboogety

@ceresstation please take a look at the submitted work:


@spm32
Copy link
Contributor

spm32 commented Sep 24, 2018

@oogetyboogety just sent payment but as discussed please make sure to promptly reply to @yann300 if other changes are required.

@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


The funding of 500.0 DAI (500.0 USD @ $1.0/DAI) attached to this issue has been approved & issued to @oogetyboogety.

@oogetyboogety
Copy link

@yann300 Fixed the two buttons by merging them into one Compile button as recommended. I updated the instructions to just point to the Remix Alpha now that that branch was merged. Please let me know if you see anything else!

Thanks!

@spm32
Copy link
Contributor

spm32 commented Nov 10, 2018

Hey @yann300 just wanted to check in on this, does everything look good on your end? @oogetyboogety can you formally submit work as well so that I can pay you out?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants