Hybrid software development with Ethereal

What is it?

At it’s core Ethereal, is a tool to package standard web technologies such as HTML, JavaScript and CSS so that it may be run on as a native application on a desktop. It is more than just a glorified web browser as apps can be extended to include server side technology, such as PHP and also native desktop functionality such as file system support, native alert windows, dialogue boxes etc.

Ethereal remains hidden to the user and the primary interface is a humble embedded web browser that interfaces with a small custom built HTTP server. They work together to give the illusion of a desktop based application. JavaScript can also be used to access Ethereal’s core API’s to create “native app functionality” like alert windows and dialogue boxes. You can also embed server side solutions like PHP and LiveCode solution.

Why are we building it?

We started building Etheral as an in house solution for packaging and sharing html content outside that of the traditional web browser – for interactive presentations, kiosk and software solutions.

After looking at different options we decided to build our own within LiveCode’s framework. Not only does this let us harness the power of the modern web browser but also the power of the LiveCode language. Once we started and ideas started to form we were certain that this was the way to go. To overcome cross-origin limitations we chose to include a mini web server to serve the content. After encountering some problems with LiveCode’s new httpd library, we opted for building a tiny “web server” that runs along side the browser. While it will lack the power of a traditional web server, it is very quick well suited for this type of application.

Applications can be built using a combination of HTML, CSS and Javascript and does noy force you to choose any specific frameworks or way of developing, giving you the freedom to code your way.

And it’s easy to use. Just drop your content into a folder and make some changes to the optional settings file and you are done. The app is ready to run. Of course you can edit the source code and add what ever functionality you may need, should the need arise.

So What is Ethereal great for?

  • Presentations
  • HTML games
  • Progressive web applications
  • Custom video players
  • Building desktop applications

As the primary presentation layer is done via a web browser it offers a number of benefits, depending on the type of app.

  • Great interfaces. The web continues to push UX design and this can easily be added to your application.
  • Apps can be developed quickly and for all major operating system.
  • Responsive design practices makes easier to target different display resolutions – though you can also set the size of your app and disable resizing.
  • Use your favourite frameworks, or even HTML – the choice is yours.

Why not just host online

PWA’s are a good way to go, but sometimes you want a solution that is free of the internet and does not need an internet connection. Ethereal also lets you extend your applications functionality to include features not available from the constrains of a web browser.

How far are we?

While we are still hard at work on Ethereal, our internal testing is showing great results, and even though there is lot more we would like to do, we would not hesitate in using for developing client applications.

A quick and simple and unfinished test app we built with Ethereal.

If you are interested and what to find out more, please drop us an email. Or leave a comment below.

Leave a Comment

Contact Us

We're not around right now. But you can send us an email and we'll get back to you, asap.

Not readable? Change text. captcha txt

Start typing and press Enter to search