There has been a lot of work into the Maui Project, and the Nitrux team has been actively working on the apps, the framework, and the libraries to make the convergence experience something unique and reliable for our first stable release. Since last time we posted something about the project, many things are refactored, a lot of improvements and UI/UX paper-cut fixes are introduced, and new platforms now have support. We were present at the Plasma Mobile sprint at Berlin, working on improving the Maui apps experience for such a platform. In the sprint, the UBPorts developers were also present, and we are looking forward to seeing the Maui Apps in their platform.
For those who are still not familiar with the Maui Project, let me quickly describe what it is:
A group of technologies aiming for convergence.
We have a set of apps, a UI and UX framework named MauiKit that help us provide a curated experience. We also built upon powerful technologies from the KDE community, like Kirigami, KIO, and others, and work on different platforms, devices, and screen-form-factors: phones, phablets, tablets, 2 in 1, desktops, etc. And we target platforms like Plasma Mobile, GNU/Linux distributions, Windows, Android, macOS, and iOS.
And this summary is to showcase some of the latest changes.
Following our convergence principle, it makes sense to target major platforms so our software can be used across different devices. If you use a Windows PC and an Android phone, it makes sense, for convergence’s sake, that you can use the same app with the same experience on both devices, no matter screen factor, underlying OS, or based input (touch or pointer).
The next step in our plan is to allow syncing the data across all your devices using Maui apps, and that is something in the works, some apps already have this as a preview: Vvave can sync and stream music files and Buho, can sync notes, all you need is a NextCloud server account.
About syncing and so on, we will talk later on when it is more matured, just noticed that it is an essential part of the Maui Project goal. Going back to the cross platforms support, the Maui Apps now supports Mac OS and iOS (partially), with some system integration, features still needed, this expands the support for Windows, Android, and GNU/Linux. These are some screenshots of Index (the file manager), Nota (simple text editor), and Vvave( music player) running on Windows 10, Mac OS, and iOS.
Due to the iOS file system constrains some apps, the experience is more than lacking, but in future updates, it should become more and more usable.
For the convergence experience, we also make use of a style named Maui Style, this style aims to be universal to all the supported platforms, and although it looks good on Android and GNU Linux, it still needs more love for the other platforms.
On platforms like Plasma Mobile and GNU/Linux distributions, this style is not the default one. Instead, MauiKit integrates with the system style. However, for desktop environments like elementary or Gnome, it also makes sense to ship the Maui Style as default and also for cases when the apps are distributed as AppImages.
We have already mentioned that for convergence UX, the apps would need to work for different input based systems, this is a task that MauiKit should take on, so the third-party apps using it don’t have to worry about it. To demo this, let me show you the current state of Index on a GNU Linux desktop environment with pointer input, aka mouse. Index by making use of MauiKit now can support lasso selection, keyboard shortcuts, drag, and drop, multi-selection based on touch or shortcuts, tabs, split views, and more. What does this mean? That you get a powerful file manager in all devices and not a downgraded or lesser version for mobile and better for desktop.
Pix, Vvave, Buho, and Nota have received many updates to make them more useful and feature complete. Pix gallery view is now more fluid and space-aware and supports multi-selection: lasso selection, keyboard shortcuts, and an immersive image viewing experience.
Station now sports multi-tab support and vertical or horizontal split views. Also, for touch-based devices, it has a quick action bar with shortcuts for commons actions.
Nota now has line numbers support, and initial work for search and replace feature is on the works. On desktops, it also can have an embedded terminal, and with syntax highlighting and a sidebar listing the files in a project, it could be used for hacking.
Vvave has an improved focus view, better albums, and an artist’s view, and overall a better UX experience.
The apps updates also benefit all the platforms, in this case, Android. The apps in landscape mode now work correctly and snappy.
In our spare time, we also try new things and ideas. With Qt 5.15, we will have better support for CSD (client-side decoration), and given that the release date is around the corner, we did a quick test with MauiKit to prove support for CSD.
The testing implementation allows themes and styles to set the window controls button icons, and also takes, when possible, the default window decoration style used in the base system, and even picks the right order of the window controls set system-wide.