Polski frontend i backend newsletter @ typeofweb.com #3
Hej! Witam w trzecim wydaniu newslettera Type of Web. Ogromne podziękowania za feedback (bardzo pozytywny!) i zainteresowanie współpracą. Zachęcam kolejne osoby do odzywania się 🤗 Nie przedłużając: lecimy!
Frontend
React Router 6
Nie wierzyłem, że ta wersja kiedykolwiek wyjdzie z fazy alfa, ale stało się! To jest to, na co wszyscy czekali: nowa wersja nie tylko jest o połowę lżejsza, ale również dodaje kilka ciekawych możliwości… Koniecznie ogarnijcie komponent <Outlet>
, a także zagnieżdżone route'y!
Next.js 12
Ostatnio celowo pominąłem informację o Next.js 12 bo chciałem najpierw zrobić upgrade i samemu przetestować. Cóż. Niestety nie udało mi się – ani na typeofweb.com ani na polskifrontend.pl nie mogę poprawnie zbudować strony po zrobieniu aktualizacji do Next 12. Nie twierdzę, że to jakiś ogólny problem, ale…
Z ciekawych zmian: pojawiło się wsparcie dla React Server Components, a część narzędzi odpowiedzialnych za build zostało przepisane w Rust co w teorii ma dawać znaczne przyśpieszenie procesu budowania. Zresztą poczytajcie sami:
A tu więcej na temat „przyśpieszenia” budowania aplikacji dzięki przepisaniu części narzędzi w Rust:
Photoshop w przeglądarce
Większość z Was pewnie kojarzy darmową przeglądarkową alternatywę dla Photoshopa, czyli Photopea (a jeśli nie to koniecznie obczajcie, mega narzędzie!) Teraz „oficjalny” Photoshop również wchodzi do przeglądarek i to z rozmachem. Fantastyczny artykuł opisujący jak łatwo było skompilować kod C++ do WebAssembly.
State of CSS 2020
Już jakiś czas temu pojawiły się wyniki State of CSS 2020 i wracam do tego tylko dlatego, bo myślę, że warto poprzeglądać jakie to nowinki w CSS się pojawiają. Znacie @container
? A color-gamut
? Zachęcam do przejrzenia. Przy okazji: odpowiedzi z edycji 2021 są teraz obrabiane i nie mogę się doczekać publikacji.
Polly.JS
Trochę slowpoke, ale dopiero niedawno odkryłem to cudowne narzędzie. Polly.js od Netfliksa to biblioteka wspomagająca testy integracyjne – w szczególności takie, gdzie musimy testować części aplikacji, które polegają na jakichś zewnętrznych serwisach (API). Chcielibyśmy testować na „prawdziwych” danych, ale przecież nie możemy polegać na tym, że jakieś tam obce API będzie działać akurat wtedy gdy będziemy odpalać testy… a poza tym są limity liczby zapytań.
Polly ten problem rozwiązuje nagrywając odpowiedzi HTTP z zewnętrznych serwisów, aby potem móc je odtworzyć w czasie uruchamiania testów. Proste, genialne, używamy tego teraz w projekcie i sprawdza się fenomenalnie.
Backend
BullMQ (dawniej Bull.js)
Tak, wiem, pewnie to znacie… no ale ja nie znałem 🤣 Bull.js to implementacja kolejki dla Node.js w oparciu o Redisa. Współbieżnie, bezpiecznie, lekko. Polecam. Warto zwrócić uwagę, że od dłuższego czasu twórcy Bull.js rozwijają równolegle zupełnie nową wersję Bull o nazwie BullMQ – całkowicie przepisaną w TypeScripcie.
Neon – natywne moduły Node.js w Rust
Rust, Rust i jeszcze raz Rust. Język uwielbiany przez tysiące programistów i programistek (wybrany "The Most Loved Language" wg. StackOverflow Developer Survey 2020 i 2021). Myślę, że o Ruście będę mówić co raz częściej, szczególnie jeśli chodzi o tandem Node-Rust.
Poznajcie Neon, czyli narzędzie pozwalające na pisanie natywnych modułów Node.js w Rust. Dostajemy wydajność, wątki i równoległość i dostęp do całego ekosystemu Rusta i jego paczek. Ale, co chyba najważniejsze i co odróżnia pisanie natywnych modułów w C++ od Neon/Rust, to bezpieczeństwo: kompilator Rusta dba, żebyśmy nie zrobili sobie niskopoziomowej krzywdy. Zachęcam do eksperymentowania.
Prisma 3.4.0
Wyszła nowa wersja mojego ulubionego narzędzia do pracy z bazami danych, czyli Prismy. A co w niej? Wsparcie dla PostgreSQL 14 i rozszerzona współpraca z MongoDB, a w kliencie Golang doszło filtrowanie po kolumnach typu JSON.
Prisma Data Platform
Od niedawna mam też dostęp do Early Access nowego chmurowego narzędzia od prismy, a mianowicie Prisma Data Platform i Data Proxy. Wreszcie!
PostgreSQL 14
Jakoś mnie ominął ten newsik: ukazał się nowy Postgres. Poprawki dla JSON, poprawki wydajności i lepsze przetwarzanie rozproszone. Wszystkie szczegóły znajdziecie we wpisie poniżej.
TypeScript 4.5 jednak bez wsparcia dla modułów ESM w node.js
Jedną z najważniejszych zmian, które miały się pojawić w TS 4.5 było pełne wsparcie dla modułów ESM w Node.js. Niestety, ze względu na trwające dyskusje i różne kontrowersje, usunięto tryb nodenext
z tej wersji i ma się on pojawić ponownie w przyszłości. Aktualnie jest dostępny tylko w wydaniach nightly do testów. Ja oczywiście od kilku tygodni używam go produkcyjnie 😇
Wideo
Konferencja Next.js Conf 2021 (cała playlista).
Migracja Nuxt do wersji 3 (live z twórczyniami i twórcami)
Wydarzenia
Mam dwie ciekawe konferencje na celowniku. Obie niestety online:
Serverless Conference 2021
Konferencja Prismy pod hasłem "Bazy danych w erze serverless". 18. listopada o godzinie 12:00.
React Conf 2021
Na żywo 8. grudnia o 19:00.
Stopka
Podobało się? Nie podobało się? Daj mi znać. Jeśli coś z wrzuconych tu materiałów Ci się przydało, to daj lajka, udostępniaj, albo po prostu powiedz znajomym. Chętnie przyjmuję też wszelkie sugestie. Dzięki!
Stale poszukuję sponsorów. Chcesz, aby Twoje materiały lub ogłoszenie było tutaj promowane? Odezwij się na wspolpraca@typeofweb.com lub typeofweb.com/wspolpraca.