Do you need a desktop application for Linux?
...and you don’t know how to do it?
There are a lot of solutions for Linux operating system desktop apps development. We are going to describe two solutions which are tested and we use it in our daily practice in ASN Plus. You will have a bigger picture of options for apps development and you will be able to decide which solution to use after reading the article.
If you want to use some of the solutions for creating desktop applications, you can use the .NET platform and GUI framework MAUI, which is popular among app developers. .NET namely supports app development for most operating systems including Linux. GUI frameworks by Microsoft did not support Linux OS till today, the newest MAUI framework is no exception.
However this issue has a relatively simple solution. You can use a multi-platform framework from a third party which supports Linux OS together with .NET platform. Such solutions are for example UNOPlatform and Avalonia. It does not mean a big change for developers who have experiences with WPF or the newer MAUI framework. It uses C# and XAML languages for creating user interfaces.
Both platforms, UnoPlatform and Avalonia have its specifics. It brings advantages and disadvantages to both solutions. However we evaluate these platforms positively and both deserve your attention.
There is another way as well
The alternative for Linux desktop apps development is Electron framework. Electron is a modern multi-platform framework for creating desktop apps. Apps such as VS Code, Slack or Whatsapp were made in this framework. It uses JavaScript, HTML and CSS, which will definitely please web app developers.
Electronic technology enables the usage of web technologies when creating desktop apps. Electron itself then uses Node.js, which is an environment which enables JavaScript code to run outside the web browser. It is possible to install Node.js directly to Linux, so nothing is stopping you from using these two technologies to create desktop apps for Linux.
As we mentioned previously, Electron itself is significantly modifiable. You can use basic web technology HTML, CSS and JavaScript for simple apps. Either you can use most of today’s used JavaScript frameworks such as React or Angular for more complex apps. It also offers juicy features for connoisseurs like the option to select whether you will be using JavaScript or TypeScript. There is also another big advantage regarding the Electron - it is the npm. Npm offers an option of using the packages which can increase development efficiency often by tens of hours.
We have been using Electron in connection with React framework and MongoDB during creation of the desktop app for Dry Cabinet, which runs on Compute Module 4. We have realized this project for company MP Elektronik technologie s.r.o.
You can entrust your desktop app development to our company, just like MP Elektronik technologie s.r.o. and many other customers. Our programmers will be happy to meet you, discuss the expected functionalities and desktop app design. Our team is always in touch and communicating for example potential changes in project assignment. We will provide you a beta-version for testing and learning at the end of development. Finally we will deliver the desktop app final version.