Framework JS Aurelia.io – opinia po ponad 2 miesiącach pracy
Aurelia.io to JavaScriptowy frontendowy framework służący do tworzenia webowych aplikacji. Cechy narzędzia można znaleźć na oficjalnej stronie aurelia.io, także nie będę się nad nimi rozwodził. Projekt rozpoczął się w grudniu 2016, wtedy padła decyzja o wyborze tego frameworka. Zadanie polegało na napisaniu Custom Receivera – aplikacji która będzie na Google Chromecast wyświetlać treści video. Projekt zbliża się do końca, ale już mogę powiedzieć, że Aurelia.io sprawdziła się znakomicie.
Aplikacja oparta o framework Aurelia.io
Nasza aplikacja musiała między innymi odtwarzać video z DRM, obsługiwać różne stany aplikacji(router), płynne przejścia pomiędzy zmianami UI, komunikować się z backendem, wysyłać statystyki i przede wszystkim w miarę płynnie działać na niezbyt mocnym urządzeniu Google Chromecast. Z mojego doświadczenia, mogę powiedzieć że pisać kod w Aurelia.io to była przyjemność. Napisałem już trochę apek w Angular 1, ale z Aurelią wcześniej nie miałem nic do czynienia. Mimo to, wdrożyć się w ten framework było stosunkowo łatwo. W końcu Rob Eisenberg, główny lider projektu Aurelia.io, wcześniej przez 10 miesięcy współtworzył Angulara 2.
Nowy projekt z Aurelia.io
W celu stworzenia aplikacji opartej na Aurelii, najprościej będzie użyć do tego Aurelia CLI. Czyli narzędzia konsolowego, który utworzy nam nowy projekt. Dokumentację do niego możesz znaleźć w oficjalnej dokumentacji Aurelia CLI.
Instalacja Aurelia CLI:
npm install aurelia-cli -g
Stworzenie nowego projektu
au new
Uruchomienie projektu
au run
Zbudowanie projektu
au build
Kiedy projekt jest już gotowy do rozwijania, to nie pozostaje nic innego jak zapoznać się z dokumentacją i zacząć się wdrażać.
Podsumowanie
Szczególnie fajne w Aurelii jest to, że stara się być niewidoczna i głównie pisze się aplikację w czystym ES 2016. Chociaż kiedy już trzeba się „zetknąć” z Aurelią okazuje się, że jest bardzo restrykcyjna i potrafi sprawić problem, chociaż myślę że głównie na początku, zanim się jeszcze do niej nie przyzwyczaimy. Dla przykładu customowy filtr nam nie zadziała, dopóki nie wpasujemy się w konwencję nazewnictwa Aurelii i na końcu nazwy klasy nie znajdzie się „ValueConverter” np. „DateFormatValueConverter”. Mimo wszystko po 2 miesiącach pracy okazuje się, że fajny framework z tej Aurelii.