Wondering what the Melon team has been up to during the summer? No, the heatwave hasn’t killed us, but made us stronger :)

If you didn’t have wi-fi on the beach, here is your chance to catch up!

MELON OLYMPIAD

The Melon dev team has successfully conducted two Olympiad rounds:

Long hours went into the organization of the Olympiad, making sure we could provide a smooth experience to our brave beta testers. The dev team has been maintaining, providing assistance to users and fixing issues/bugs raised by users during the Olympiads.

A total of +70 Melon funds have been created and managed on the main net over the summer! Talking about a hot summer!

MELONOMICS PART I + II

The Melon team published their thinking around the Melon token economics

Melonomics Part I : https://medium.com/melonport-blog/melonomics-part-1-aligning-interests-through-token-unification-d0b98a02de46

: https://medium.com/melonport-blog/melonomics-part-1-aligning-interests-through-token-unification-d0b98a02de46 Melonomics Part II: https://medium.com/melonport-blog/melonomics-part-2-the-melon-engine-48bcb0dae65

The technical implementation of Melonomics Part II is subject to further research and will begin in the coming weeks.

PROTOCOL

We conducted an audit with Solidified and fixed all the issues raised during the audit: see audit report here.

We wrote the contract for the Paros and Naxos Olympiad (+ a lot of tests for those).

We released two main net versions of the smart contracts: v0.8.3-paros and v0.8.3-naxos.

We worked on new fees model, both for performance and management fees and introduced the concept of performance periods. This is subject to more work in the future.

We worked on an exchange integration with the Kyber network.

We built a Kyber reserve manager on Kovan.

We removed dapp tools as a compilation tool.

We migrated from parity.js to web3.js 1.0 and from parity devchain to ganache-cli.

We have re-worked our thinking the architecture of our contracts and have initiated a refactoring of those. We aim at making the protocol more modular, more flexible and easier to reason about for external developers.

RISK ENGINEERING

We integrated the pre- and post-condition policy execution into policy manager

We designed the policy interface and the policy manager.

We implemented the policy manager and integrated it with the fund contract.

We implemented 5 individual policies (risk management rules).

We wrote tests and unit tests for the policy manager and for individual policies

INFRASTRUCTURE

We worked on a Melon funds monitoring tool, Safeguard.

We’ve fixed a bunch of issue with our liquidity provider on Kovan.

We migrated our previously scattered and manually maintained infrastructure into a full-fledged Openshift cluster. We’ve started to set up full continuous integration & delivery pipelines and code driven configuration management within this new ecosystem.

We’ve re-architected and modernized the electron app environment to ease and speed up development. As a side-effect, the production builds have become more efficient and easier for us to package and release.

REPORTING TOOLS

We created a reporting tool that can extract the whole track record of a fund from the blockchain and display it in a neat report with share price history chart, all trades with a token contribution chart, all investments with an investor chart and more. To be able to do that we had to write a complete client side fund-simulator that can recreate a funds history according to the data from the blockchain. This simulator could help us in the future to backtrack trading-bots or simulate the effect of automated policies. On top of that we created a way for auditors to signal on-chain that they audited a fund. This helps investors see if a fund is professionally audited or not. We will go more into detail of this reporting and auditing tool in a future article. You can explore a first impression of the reports by clicking on “Show Report” on https://melon.fund/ .

FRONTEND

We set up the Melon Blocks styleguide.

We created new components based on Typescript, and migrated from the old components to the new ones.

We moved away from semantic-ui.

We wrote a lot of tests.

We created new forms with better validation based on Formik (in replacement of redux-form).

We released the Melon Manager Interface v0.8.3 PAROS and v0.8.4 NAXOS with the following features: Paros/Naxos asset universe, no risk management restriction, market orders on Oasisdex and 0x, limit orders on OasisDex, aggregated orderbook through our GraphQL api, new trading form, new transaction form to set the gas price.

and with the following features: Paros/Naxos asset universe, no risk management restriction, market orders on Oasisdex and 0x, limit orders on OasisDex, aggregated orderbook through our GraphQL api, new trading form, new transaction form to set the gas price. We have been maintaining a few different versions of the frontend: a main net version available as a web app and as a desktop app, and a Kovan version available as a web app on melon.fund. We tracked and solved issues users were encountering during the Olympiads.

As you might have noticed if your participated in Naxos, the frontend has a new look! The user experience has improved quite a lot. You can try it by yourself on melon.fund (Kovan version).

MELON LAB

We’ve added some quality-of-life improvements to the melon-lab repository:

We added a shared .env (dotenv) configuration across all packages.

We optimized docker multi-stage builds for continuous integration.

We upgraded to Babel v7 across all packages.

We migrated towards Babel TypeScript language transform.

We simplified the Webpack configuration.

We are currently in the process of migration away from the legacy redux state driven router towards the native next.js router.

DESIGN

We continued working on the frontend design.

We worked on user on boarding wireframes.

This is what we call a hot #BUIDL summer in Zug.

The Melon dev team is now working on the refactoring of the smart contracts, the refactoring of the Javascript library, continuing work on risk engineering policies, working on more integrations. We also started working on the Melon Governance System.

Melon Dev Team ❤

This blog post is subject to change as the research & development phase is ongoing. Melonport will aim to update blog-posts regularly to represent our latest thinking on a best-efforts basis but there may occasionally be time-lags between latest thinking and updated documentation. With this in mind, the author of this blog assumes no responsibility or liability for any errors or omissions in the content of this blog.