district0x Dev Update - July 23rd, 2019

Development progress and product changes from district0x

For the district0x project, the past sprint led to a deployed Meme Factory update which contained many of the tested and verified fixes and improvements mentioned in our July 9th update. From there, we planned the development tasks that would be included in the current sprint cycle, which are currently in the middle of the development cycle. These issues are expected to remain in development through the following dev update, at which point they will be on their way to full testing and deployment.

Some time was dedicated to going through the community reported issues, bugs, and features in github. This resulted in a fruitful brainstorming session that left us with a few areas to focus on in Meme Factory’s future. Of the larger features researched, the biggest one for end users will be the pending updates to the Memefolio/profile pages in Meme Factory, which we intend to make much more friendly to creators looking to verify and share across platforms. Additionally, after some discussions with the community regarding filetypes and file sizes for Meme uploads, we decided to tackle a few compatibility issues that will allow users more flexible options when uploading.

Meme Factory

Using our new development planning cycle, we will now provide a change log for any live applications. These will only be provided in the dev update following a deployment week.

Change Log

A twitter bot was added to track all registry and marketplace activity.

All images now pre-render as expected. This means when sharing to twitter, slack, facebook, etc. the meme detail link alone will show a preview of the meme image itself.

End prices for memes were displayed inaccurately due to a rounding error. This has been fixed.

The curators and collectors scoreboards both had errors in certain stat calculations. This is now fixed.

A massive update was made to our blockchain syncing process. We now rely on an on-server cache that should allow much quicker re-syncs when we need to restart the site.

Since deploying these changes, we’ve made quite a bit more progress on a few other planned issues. Of note, an entire QA story was written with step-by-step instructions for us to quickly run through and check every critical event works in manual testing routines. This will be leveraged in future testing periods.

The next major update for Meme Factory will involve the deployment of the parameter change features. These will be a series of pages, similar to the submit, challenge, and vote pages currently, that will allow DANK holders to submit changes to the operation of the registry itself. Things like the vote period, deposit size, or share of votes required to win a challenge are all things that users will be able to affect directly once this change is made. Recent struggles have involved a reversion of the contract states after deploying a parameter change. After sinking nearly a week into troubleshooting various truffle updates and other failure paths, we believe we’ve found a solution that will make changes actually stick. Once this is complete, parameter change page will move on to manual testing.

Among the smaller issues we’re tackling, we’ve improved the look of the email template significantly — particularly the footer where the mobile layout was often completely broken. By reworking some assets and killing some negative space, we were able to clean this up a bit.

Additionally, as a follow-on from our discussion of raising the maximum size of submissions, we’ve also decided to implement .svg file support for uploads. We’ve also investigated the potential for supporting .gifv animations, and after some research decided we would add support for that in addition to auto-playing .mp4 files. This will hopefully allow much higher fidelity, better frame rate animated images to be uploaded within the 1.5MB limit.

District Registry

The District Registry continues as the second priority in our stack. Core development for the application is largely complete, however, similar to the Meme Factory parameter change pages, we’ve been facing some unexpected issues with Truffle in our testing suite. Though we’ve attempted to fix through a slew of troubleshooting mechanisms and even a full Truffle update, we found this setup to pretty inadequate for our purposes, and will instead be redirecting efforts towards building the entire test suite in Clojurescript.

Some additional fixes were made to the District Registry’s core functionality as we test the basic workings of the app on testnet. Additional features like notifications are nearing completion as we finalize the finer points of their implementation. Specifically, after encountering hurdles during some experimentation with browser based notifications, we’ve opted to continue with an email-only notification scheme as its the most voluntary and frankly, the least annoying way for a web app to do notifications.

Alongside this work, improvements to the initial UI specification are being made. For instance, we’ve decided that we need not only to display the staking curve currently employed by the district, but also a historical chart of stakes for users to reference as well. There are likely several more “forgotten” requirements like this that will fall out of our manual user testing that all need to be ironed out before proceeding with audits and a Mainnet deployment.

Ethlance

After months of work building out every reusable component in the UI, and polishing the responsiveness of each in both web and mobile we’ve begun final implementation of each individual Ethlance page. The final draft of the splash and landing page is complete, and the Jobs page is in progress. We expect to move towards a relatively quick near-feature complete app to deploy in the coming weeks, but have extensive testing to conduct when a testnet instance is finally achieved.