district0x Dev Update - March 3rd, 2020

Development progress and product changes from district0x

Our last update covered our current roadmap for the year and beyond from a high level. This update, we’ll be returning to our usual format of discussing specific challenges encountered and solutions implemented to the problems we’ve faced in our most recent development cycle.

As always, we welcome feedback on the format and content of our regular publications. Feel free to leave a comment directly on this post or hop in the community discord and let us know what you think!

d0xINFRA

Earlier this year, we were working on migrating from our current node logic utilizing parity, to one instead running on Infura. We detailed several weeks ago about an unexpected hurdle that at the time, seemed insurmountable. We decided then to scrap the great deal of work we had poured into Infura, and begin investigating a migration on Geth instead.

However, we’re ecstatic to share that after a new discovery in how we can design an Infura node, we are able to resume work on this solution, and have already begun implementing it directly into our older, already staged QA applications. Essentially, this required some creative methods for how we handle and ingest payloads from the chain upon server resync. Much of this logic was constructed as-needed for Meme Factory in the early days of its launch, so making sure our Infura node could handle this kind of process was critical. We had to raise the allowed frame size for the web3 websocket connection. Having done so, we’re now operating well below the Infura node limits.

Additionally, we solved a few problems that had cropped up as regressions on Meme Factory, related to a bug in our deployment pipeline where occasionally blank images would get constructed. With this addressed, we can begin moving towards Infura on our remaining applications.

Ethlance

Ethlance remains in development on multiple fronts. Apart from the dynamic content on the server side, Ethlance’s front-end is pretty much done. Additional documentation is being added to assist in future collaboration. Once we can begin populating the app with “fake” contract data, we can refine what we’ve built further.

Before we can do that though, we need to finish the Ethlance database and server. In that regard, much work has been done on the server architecture and Bounties Network contracts, getting the finer details of how their integration plays with ours. We had many extemporaneous parts leftover from the old Ethlance that we found we could simply drop once adapting to the Bounties Network’s forms.

District Designer

The bulk of new development in the past few weeks has gone to what we were previously calling the “District Creation UI”, but we are now instead calling the District Designer. As a reminder, this will exist as an extension of the District Registry, and will be a WYSIWYG-style dApp creator that will let anyone without technical skill spin up their own live district and marketplace.

Work has proceeded rapidly in this regard. We’re still in the early stages, but in the last few weeks we’ve listed out every basic feature we’d like to see, and have culled this list down to a release spec. Alongside this, we discussed at length the amount of decentralization we would like to deliver to users of the app, as its especially important for user-made dApps to have their own decentralized hosting options.

With just Ethereum and IPFS, as our original applications had, we’re reasonably decentralized but cannot deliver a modern UX. However, utilizing Cosmos, we can operate a sidechain, and secure it via proof-of-stake with DNT on Ether Mainnet. This should allow us extensive transaction throughput, with relative affordable security and a new source of utility for DNT on the network.

Much of our imagined solution here relies on an Ethmint compiler to get all of our typical web3 calls compiled into Tethermint opcodes. We will of course need hand built bridgepoints for DNT staking, as well as a host of other specifically crafted solutions. But for now, this remains the game plan we’re sticking to.

The coming weeks will involve a great deal more documentation on Ethlance, experimentation with Infura, and wire-framing/product design for the District Designer. We’re excited to see what is by far our most ambitious application take form, and we can’t wait to share the beginnings of it with our community.