7GUIs was been created as a spin-off of the master’s thesis Comparison of Object-Oriented and Functional Programming for GUI Development by Eugen Kiss at the Human-Computer Interaction group of the Leibniz Universität Hannover in 2014. Eugen wrote: "The GUI programming sphere has anything but stopped evolving since then. Yet, the holy grail appears to still be out of reach. I believe projects such as 7GUIs may help us find the right direction sooner. Four years after its inception I have written an article about 7GUIs: Towards a Better GUI Programming Benchmark."


Having various implementations of 7GUI’s tasks is good. Having analyses of the different approaches to identify the pros and cons is even better. If you created a blog post, an article, a video, a short overview etc. comparing of one or more 7GUIs implementations feel free to add your link here:

Related Work

  • TodoMVC is similar in spirit to 7GUIs in the sense that a task is compared between different application frameworks (in different languages and paradigms) mostly in terms of the clarity of the source code behind the resulting application but also in terms of the performance. Instead of several isolated tasks such as in 7GUIs, TodoMVC is about implementing one cohesive application. In terms of contributions and positioning, TodoMVC's focus lies on web-based (single-page and/or MV*) application frameworks.

  • HNPWA (Hacker News readers as Progressive Web Apps) describes itself as a “spiritual successor to TodoMVC”. Its focus lies even more on web based technology and performance, the app/task is larger and it optionally encompasses non-GUI aspects such as writing an API server.

  • Rosettacode's GUI category. Rosettacode is a general programming chrestomathy site with a category for GUI tasks. However, these tasks focus mainly on very specifics of a toolkit and not on fundamental GUI programming challenges.

  • Layout Manager Showdown. The author stumbled upon a complex layout task that could not be fulfilled by his GUI builder of choice. This task was used to compare different layout managers in terms of code clarity. The difference to 7GUIs is that complex layouts are but one GUI challenge (which is already somewhat reflected in 7GUIs' CRUD task) and not a mostly “complete” set of GUI challenges.

  • Flux Challenge is a “A frontend challenge to test UI architectures and solutions” in the same vein as TodoMVC. The main challenge lies in handling tricky asynchrony elegantly which I find interesting since I feel 7GUIs lacks in this regard.