GitHub Review: DAOstack

‘The toolkit for exponential organizations’

Date: 10.4.2018

DAOstack Description: DAOstack is an operating system for a new form of web organization: the DAO. Decentralized Autonomous Organizations have captured the imagination of the best minds in the blockchain space, but despite their promise have yet remained an abstract idea. One key point of failure is the lack of solid framework for decentralized blockchain governance. DAOstack provides a general stack for collective value management on the blockchain, including a friendly JavaScript developer environment and an intuitive user interface. Just as HTTP allows the creation and interoperability of web sites and web applications, the DAO stack enables
the creation and interoperability of web companies, collaboration apps and DAOs, as well as the alignment of their interests. The result is a new web of open collaboration, in which collectives can self-organize around shared goals and values, not limited by pure economic growth.


DAOstack GitHub Profile

Overall Assessment: At the time of our review, DAOstack has 9 very well maintained repositories in their GitHub profile which are surprisingly well documented and regularly updated. Their last commit was on April 9, 2018. All of their repositories are relevant to the project and in active development.

As mentioned in their website, whitepaper and executive summary, they are creating a stack and framework for DAO (Decentralized Autonomous Organizations). What we really liked about the GitHub profile, is that it contains everything from their general purpose governance framework (‘Arc’) to proof of concept level application (‘Alchemy’).

We tested all of their own uploaded repositories from arc to alchemy. The testing and review process was smooth as butter because of their very well written documentation and instructions. So kudos for that. We also found some hiccups such as database table creation error on postgresql and user switching error on alchemy client. However, this is somewhat mitigated by the fact that these types of errors are quite frequent at the current stage of development.

We will be reviewing in depth two of their repositories which are:

  • Alchemy Server
  • Alchemy / Alchemy Client

The reason for testing these two specific repositories is that both of them provide a good proxy for their technology assessment as it uses the full DAOstack.

Alchemy Server Repository Dependencies

Repository Name: alchemy-server

Last Updated: 8 March, 2018

Total Contributors: 1

Description: Server for Alchemy Client

Analysis: We tested the repository in a Linux system (ARCH Linux) and following the documentation was very easy for us. Though we encountered some errors during the process. According to their documentation we need to have a PostgreSQL database with a specific database name, username and password. Considering as a demo this practice is ok, but in general not a good practice to have. Moving on, after installing all the node dependencies we had to run a command to create the tables in the database, and we got an error.

ERROR: NaN ‘postgresql’

Seems like we are not the only one and issues are already created in their GitHub repository but no satisfactory answer yet. After checking the database manually, we found that the tables were created in the first place. Weird.

alchemy-server REST API Explorer web interface

..And finally, we were able to run the server.

Installation process of alchemy-server in terminal

Overall, this repository is satisfactory for us.

The next test was to run the alchemy client locally and test their proof of concept.

Repository Name: alchemy

Last Updated: 7 April, 2018

Total Contributors: 4

Description: A DApp that uses DAOstack to manage funds and demonstrates a real world use case for DAOstack.

Analysis: We tested the repository in a Linux system (ARCH Linux) locally with Ganache (Development environment for Etherium blockchain), without MetaMask (MetaMask allows you to run Ethereum dApps right in your browser without running a full Ethereum node) and also tested their online Heroku deployment.

Installing and running the app locally was really easy to use, thanks to Node and NPM. Their documentation is very instruction oriented so kudos for that.

Alchemy Local Web Interface

We found some weird errors, for example, we couldn’t change the user account from the top left corner. Also, purchasing GEM function is disabled in the current version.

Alchemy Bug on changing user

Same problems in their Heroku deployment as well.

Issue list of alchemy client. All of them closed.

Since we couldn’t actually perform any transactions, we feel this version of the repository needs some update or fixing. Though we have already seen some demo video where it was working. We will try again the whole process and keep it up to date if we find any success. We also tried their Heroku hosted app where it didn’t work either.

The way DAOstack is documenting their repositories is actually amazing and we don’t really see this kind of documentation in most of the ICO MVPs. Their prototype has some bugs, but somewhat mitigated by the the fact that they are in active development. We think DAOstack is on the right track from a tech perspective.

Please follow us on: