ElectronIC Control

It’s a cross-platform UI library of custom controls and elements developed using the Electron framework.

Challenge

In terms of enhancing the opportunities of our SkyHistory product, a chat history manager for Skype that lets storing messages, filtering chats, and searching through the conversations by date, we have created a cross-platform library of custom UI controls and elements.

The UI library is in charge of performing Skype conversations, user and group chats, and date filters.

For its realization, our team turned to:

  • Electron cross-platform framework
  • Node.js for the back-end
  • AppX format for the output package

Approach

In case the development of native GUI applications for desktop operating systems using web technologies is needed, the Electron software framework can contribute to the task fulfillment. Electron provides a platform for the cross-platform desktop application development with HTML/CSS/JavaScript and NodeJS to access the system API. It has already enabled creating lots of applications, including Atom (a text and source code editor), Visual Studio Code, the Slack corporate messenger, etc.

Taking it into consideration, the SCAND development team decided on Electron to implement the cross-platform library of custom User Interface controls and elements. This framework ensured its prompt development and assisted in the realization of all library’s features required.

As our cross-platform GUI library appears to be a part of the SkyHistory product, all data are extracted from the SQLite database. For that reason, we used the SQLite ODBC driver written in C++ and wrapped into the .NET Core Data.Sqlite to attain compatibility and a cross-platform format.

As for submitting application packages to the Windows Store, the output package in the AppX format was created with the help of the Electron-Windows-Store CLI.

Main Features

The SkyHistory cross-platform GUI library involves:

  • Users and groups trees
  • Calendar with seasons and months trees
  • Menu and toolbars panels
  • Complex custom message conversation list control
  • Elements of searching and filtering Skype messages

 

The message conversation list as one of the major UI elements offers all the opportunities below:

  • Adding text messages of different length.
  • Using timestamped titles and subtitles.
  • Customizing fonts and font settings, namely choosing their size, type, and color for your own and other users’ messages, etc.
  • Creating a dynamic scrolling.

Highlights

Putting together a series of elements, we have eventually got the library that could be briefly described as follows:

  • It is a cross-platform GUI library.
  • The Electron framework has been used for the development.
  • The NuGet package manager is utilized.
  • The .NET Core Data. Sqlite component has turned out an integral part of the development.

Our GUI library is compatible with the Windows Anniversary Update (Redstone) to submit the application as the AppX package to the Windows Store.

Result

The SkyHistory cross-platform GUI library works equally well for the platforms which support Microsoft Skype, i.e., Windows, Linux, and macOS.

After the release of the Windows Anniversary Update, codenamed Redstone, applications can be submitted to the Windows Store as AppX packages. It means users should simply double-click the .appx to automatically install it.

Need a similar project?

Contact us

Our team is at your service — just drop us a line and get the answer

Thank you for your interest in our services. We have received your message and will respond to you shortly. Please check your mailbox for a confirmation letter from us.