Aleph.js alfa z funkcją importowania map
W listopadzie pojawiła się nowa wersja Aleph.js alfa. Jest to framework Reacta dla aplikacji renderowanych po stronie serwera w Deno.
Aleph.js korzysta ze składni importu ESM, dlatego też nie potrzebuje webpacka czy innych pakietów. Moduły kompiluje się tylko raz, a zmieniając jeden z nich, nie kompiluje się całego projektu, a tylko zmieniony moduł. Co ważne, framework aktualizuje się w przeglądarce za pomocą Hot Module Replace (HMR) z React Fast Refresh.
Wersja Aleph.js alfa
Nowo wydana wersja frameworka zapewnia m.in. system routingu oparty na stronach, razem z obsługą tras dynamicznych, oraz routing boczny. Ponadto wydanie alfa ma trasy API i opcję statycznego generowania witryn. Aleph.js obsługuje także Markdown, CSS oraz Sass i wspomnianą już wcześniej opcję szybkiego odświeżania – React Fast Refresh.
Import map
Framework obsługuje import map, dzięki specjalnemu plikowi import_map.json, który jest zlokalizowany w katalogu głównym aplikacji. Ta opcja pozwala importowanie bezpośrednio za pomocą adresu URL. Z zaimportowanymi mapami Aleph może zastąpić linię import React from “react” inną formą, na przykład: import React from “https://esm.sh/react@16.13.1”.
Współpraca z Deno
Przede wszystkim Aleph posiada wiele funkcji Next.js, dostępnych w Deno. Deno to proste i bezpieczne środowisko uruchomieniowe dla JavaScript i TypeScript. Bezpieczeństwo w Deno jest zapewnione przez bardziej rygorystyczny model zabezpieczeń, który domyślnie nie umożliwia dostępu do plików, sieci i środowiska. Deno korzysta z modułów ECMAScript (ESM), dlatego też wszystkie zależności są importowane jako URL i zarządzane przez Aleph.js:
import React from "https://esm.sh/react@17.0.1" import Logo from "../components/logo.tsx" export default function Home() { return ( <div> <Logo /> <h1>Hello World!</h1> </div> ) }
Do obsługi ESM Aleph potrzebuje nowszych wersji przeglądarek – np. Chrome od wersji 61, Firefox 60 czy Edge 16.
Moduły Deno zapewniają Aleph.js alfa lepszą produktywność w fazie rozwoju. Każdy moduł musi zostać skompilowany raz. Gdy się zmieni, Aleph.js zajmie się rekompilacją pojedynczego modułu, dzięki czemu programista nie musi tracić czasu na pakowanie aplikacji przy każdej zmianie.
Podsumowanie Aleph.js alfa
Framework wciąż znajduje się w fazie alfa, nie jest jeszcze gotowy do użytkowania codziennego, jednak aktywnie się rozwija. Aleph jest oprogramowaniem open source, na licencji MIT. Twórcy w najbliższym czasie planują dodać obsługę starszych przeglądarek (np. IE11) oraz obsługę PWA i AMP. Dokumentacja jest dostępna na stronie internetowej.