DAI payout (26/09/2022-25/10/2022) - luzzifoss

As per the original worker proposal’s terms (visible here) I’m asking for 9000 DAI in total to be sent to DevX’s wallet (DevX.eth).

Proof of work

Swapr

On Swapr, a PR by @guerrap was reviewed, approved and merged updating the fee receiver address in the Swapr Coingecko API project, so that protocol fees could be again shown correctly on DXstats. A deployment of the application was then performed.

Carrot

Very busy month here.

On Carrot I’ve been working on a couple different fronts, with the first being developer tooling.

The vision for Carrot v1 is to enable anyone to come in and create a KPI token or oracle template, with the possibility of getting part of the revenue from how the template is used. In order to do so, tooling needs to be developed to make it as easy as possible to make developers productive on Carrot. With this in mind I’ve developed create-carrot-template, which is supposed to be for Carrot what create-react-app is for React. create-carrot-template (or cct for short) is a JS binary that guides developers in the creation of Carrot templates. They’re presented with a series of questions and are able to pick different technologies which they’ll use to develop both the contracts and frontend of the template (at the start 2 presets are present, allowing to develop contracts with Foundry and the frontend with React and Typescript), and at the end of the process they get a fully ready-to-hack project with an example implementation of the template.

In order to support this, an additional library had to be developed, carrot-scripts, which like react-scripts helps in making some project configuration transparent so that the developer can only focus on being productive (in create-react-app for example, react-scripts handles a lot of the Webpack configuration hell).

The projects above have been developed in a monorepo setup and are still early stage, so I’m continuously working on them. The repo can be checked out here.

On the frontend monorepo front, work has been done on the overall structure, bundling the various different packages using Rollup, and using Turbo to manage the monorepo lifecycle. Development has also progressed but honestly too much has been done to comprehensively write here. Anyone is able to check out the code and commit history here though.

New ERC20 KPI token template + Reality.eth oracle template repos have been set up using cct and carrot-scripts and work from previous codebases was ported over, resulting in a net improvement in code structure and dev experience.

Work on the v1 core contracts also continued, and in particular I have::

  • Added an update template specification Foundry script to make it easy to perform the task.
  • Added a remove template Foundry script to make it easy to perform the task.
  • Removed the ERC20 KPI token and Reality.eth oracle templates from the core codebase moving them to their own spot (as mentioned above).
  • Updated the factory interface to add missing functions and add some override modifiers to the factory contract to make sure interfaces are implemented correctly.

Proof here.

2 Likes