vidupont / ebu-kiosk-v1

EBU Kiosk V1 - Raspberry Docker Container + APPS
Apache License 2.0
0 stars 0 forks source link

Frameworks evaluation #8

Closed vidupont closed 7 years ago

vidupont commented 7 years ago

To start the first release, I had to choose with which environment I will work on, why and how to proceed to develop the initial apps on the totem.

I had in mind 3 languages I know:

The decision was only my own choice, and based on my expectations:

I use already Atom has main IDE for IoT dev, so I want to use the same tool for the Raspberry apps.

Python Not a big fan of the syntax and language grammar. It was a pain to setup a GUI framework like Kivy (2D GUI), due to python scripting, dependencies and packages... Did try python also on IoT on ESP32 board, but well, not my preferred choice.

Swift I like swift a lot as object oriented language and the new paradigm with their "protocol" concept. However, due to the timing and early support on Raspberry, I think the workload will be too high for the project. I did try the raspberry pi with swift , with CLI app, it works. Haven't tested any GUI framework yet, perhaps with PureSwift it will be possible... although, I want to focus on the apps first, so finding my way to get all the swift framework working (cocoa, touch...) will be too much for now. I'll be back on Swift perhaps on a second release. It definitively worst it.

Javascript Looks the good compromise: I know this language since I did websites 5 years ago, it hasn't changed too much. There are ton of tutorials and frameworks, compatible with Atom... So I go for it. I had to find, test and choose which tools / framework to use and end up with the following:

After some tries, I find out:

So there we go... The GUI will be design with Sketch, and I will see if the object will be in SVG or directly with Javascript code.

Final choice, after numerous testing: