Quarterly update — March 2021

Yann Levreau
Remix Project
Published in
5 min readApr 21, 2021

Dear Community,

We hope each and everyone of you is doing well. We’d like give you a general recap of what we have been up to for the last three months along with some links for more technical details.

This post will also be published in the Ethereum Foundation’s supported teams update.

Team

We are a group of seven people living in disparate lands (US, Nigeria, France, Armenia, India, Netherlands, Canada) — communicating across many timezones in varieties of English while developing in flavors of Javascript. Our team includes full time members as well as external devs who work more on a project by project basis.

Collaborations & Thanks

Shoutouts: In the past few months we worked with the very talented 0mkar on the Remix VSCode extension. @zagi_david is helping us with the transition to React. Matteo is working on Ethereum4. @machinalabs made updates to the Optimism compiler. And @bunsenstraat has joined our team upping our game and our pitch.

@GrandSchtroumpf worked his last month with us in March after more than 2 fruitful years. Thanks to him we have the robust implementation of Remix plugin.

Teamwork

Our team does have specialists — but we try not to completely pigeon hole our members. We are now taking turns being the release manager so that everyone has the opportunity to get an overview of the whole project, the release processes and also to learn new competencies. And also to learn these competencies without doing silly things like deploying a new release in the middle of the night or on a Friday.

React

We are moving Remix’s codebase to React. This should be finished later this year.

The File Manager, Debugger, and some UI helpers have already been migrated, the rest will follow soon. The aim is also to wrap these components in a VSCode extension (more info below).

VSCode extension

Remix IDE runs the remix plugin engine which allows us to reuse our components in different contexts. This means that our UX components that run in Remix IDE can also be loaded into VSCode. Our plugins don’t know or care where about their environment — they just work.

Please check out the Remix VSCode extension! https://marketplace.visualstudio.com/items?itemName=RemixProject.ethereum-remix

Here’s our post introducing this plugin — including how to use it and its current limitations:
https://medium.com/remix-ide/a-remix-ide-extension-for-vscode-1f751fdeee46?source=friends_link&sk=1291e555a90ea7600c305fcc4f0bc67e

And for an article about how the Remix VSCode extension fits into our vision see:
https://medium.com/remix-ide/remix-plugin-engine-plugs-ahead-6b3d89872926?source=friends_link&sk=799434c5f5c1bc0b4214901b49c7a6ef

One of the important goals here was to integrate our extension with other popular Ethereum VSCode extensions. Right at the top of this list is the Juan Blanco Solidity extension.

Our extension can work with Juan Blanco extension’s Solidity compiler or on its own.

Which means, if you compile a contract using Juan Blanco’s extension, you’ll keep the same configuration as before AND you can use Remix plugins like Sourcify, Solhint, Solidity2UML, Learneth, etc (which makes use of the compilation result generated by JB ext).

The extension is still in development and we’ll be adding more Remix plugins & functionality to it as well.

And beyond VSCode we working on an integration Theia. (This is a teaser for things to come…)

Matomo

We’ve recently added matomo analytics, please check this post if you want to know more details : https://medium.com/remix-ide/help-us-improve-remix-ide-66ef69e14931

We are not collecting sensitive data nor personally identifiable info. The analytics help for us get a sense on what is being used, what is not and where we should put more effort. And it has helped us track down some bugs.

Our Matomo usage report is completely public. You can access it there https://matomo.ethereum.org/

Workspace

While initially planned for Q2, but we completed it in Q1 because it is an important update and really needed by our users.

The workspace management feature allows a more structured way of organizing files in Remix’s File Explorers.

This is now deployed and working smoothly — although we did have some issues migrating the files to the new system (mainly because the local storage easily reaches full capacity). This is now fixed and we are monitoring the situation and checking in our channels to make sure all the users are satisfied with the feature.

Ethereum4 initiative

Since last year, we have been organizing workshops for different communities with different backgrounds and different levels of technical expertise. We felt the need to better formalize what we want to do in order to be more efficient in our action. We’ll release a summary soon.

We did a ‘Ethereum for Musicians’ workshops(with @matteo Tambussi and Rob) a months ago at the Milan Digital Week and more workshops are scheduled to follow: ‘Ethereum for Lawyers’, ‘Ethereum for Visual Artists’, ‘Ethereum for NGOs’, and ‘Ethereum for Doctors’.

The goal is to connect specific industries to Ethereum, trying to explain what Ethereum can or can’t do and to receive feedback.

Suggestions from the community

In our continued engagement with teams from the community, in the past 3 months, we released some features that were suggested by OpenZeppelin. The first is the ability to use “NPM like” import directly from the browser.

e.g. You can now import modules from NPM with a statement like:

import “@openzeppelin/contracts/token/ERC721/ERC721.sol

Secondly, one can load Remix with a url that contains the encoded contents of a file for the Editor. For example:

Remix https://remix.ethereum.org/#code=cHJhZ21hIHNvbGlkaXR5ID49MC42LjAgPDAuNy4wOwoKaW1wb3J0ICJodHRwczovL2dpdGh1Yi5jb20vT3BlblplcHBlbGluL29wZW56ZXBwZWxpbi1jb250cmFjdHMvYmxvYi9tYXN0ZXIvY29udHJhY3RzL2FjY2Vzcy9Pd25hYmxlLnNvbCI7Cgpjb250cmFjdCBHZXRQYWlkIGlzIE93bmFibGUgewogIGZ1bmN0aW9uIHdpdGhkcmF3KCkgZXh0ZXJuYWwgb25seU93bmVyIHsKICB9Cn0

Remix will decode and load the value of “code” in the editor. Give it a try ;) . Please check https://twitter.com/OpenZeppelin/status/1379182053682466819 if you want to see how this is being used by OpenZeppelin.

Other input from the community

We are always working to keep Remix a safe and secure platform. In this quarter, we received a bug bounty report and quickly made updates to address the findings.

Coming in Q2

Hardhat, Truffle integration, dGit, …

We‘ll soon be shipping out an integration with Hardhat. Truffle will follow soon. More info will come in the blog post for the next release.

The dGit -a plugin that combines the use of GIT and IPFS for saving and versioning your work. We are excited to unveil this plugin to show you its awesomeness!

Workshops & Documentation

We’ll be translating our documentation into a number of languages.

As stated before, there will be some Ethereum4 workshops.

Finally

If you want to get in touch please join us on Twitter, Gitter, and via email (remix@ethereum.org).

We’ll welcome any proposal ;)

And if you are looking for a few Remix tips: #remixDidYouKnow in twitter

Please feel free to check out these other links and hope to see you all soon ;)

--

--