Development of Blend4Web applications with GitHub Electron platform
2019-08-05
Background
Web-development is the main trend in programming in the last decades. Mostly thanks to web-application opportunities of networking and unifying methods of generating user interfaces the same as the documents familiar to regular users. Almost all modern software uses browser interface for its own client units.
Besides the demand in desktop and mobile applications remains high. Firstly it covers critical-business applications, which must work independently from browser versions and user-defined functions. Web-development can be used as the primary approach for desktop applications. For these reasons several container platforms have been created. They have different extent of browser integration into applications.
GitHub Electron
GitHub, the biggest bank of free software, created its own platform for container development of desktop applications with integrated Google Chrome browser. There are already many modern softwares developed on GitHub Electron such as Slack, Mattermost, WordPress, Figma, GitHub Desktop, Skype and Atom.
It’s a very efficient environment for WebGL applications with a predictable browser. The users will install such applications without wondering what kind of browser they have in their operating system, what extensions are enabled, as well as security questions.
Blend4Web application container
Web-application launched in Google Chrome integrated web-browser works as a user interface of Electron applications. Blend4Web container can be embedded in web-applications in a regular manner to visualize 3d scenes.
NodeJS server
Electron applications server tasks are limited to computer local resources such as file system, console and interface callbacks of other programs to edit images. It’s easier to store program configuration files on local disk, read them when they are launched and initialized, and write down the modified options.
User interface
All required elements of a user interface in Electron applications can be made with HTML elements as any website. Web-development experience can be applied when working on variety of stunning user interfaces. The most interesting case is an example of SPA websites working on JavaScript client libraries of web-pages render.
Application build
The biggest advantage of GitHub Electron platform is a possibility to assemble one program project for multiple operating systems. The main build is made from npm packages for Windows, macOS and Linux. The scripts of additional user experience scenarios for the forming installer can be added during the installation. The same method is used to form portable builds which don’t require installation process on user desktop and can be launched directly from the file folder.
Demo
Conclusion
Blend4Web with GitHub Electron creates a great environment for development of cross-platform 3d applications