Microfrontendy w module federation to kłamstwo!
Odcinek opublikowany 07.03.2025Aleksander Lubych i Jakub Pawlak zapraszają na kolejną dawkę brutalnej prawdy o mikrofrontendach! Czy Module Federation to naprawdę złoty środek na mikrofrontendy? A może to po prostu kolejny sposób na stworzenie… rozproszonego monolitu? W tym odcinku obalamy największe mity na temat Module Federation i sprawdzamy, czy rzeczywiście daje nam prawdziwą niezależność zespołów i technologii. 🔥 O czym pogadamy? ✅ Jaką wizję mikrofrontendów miał Manfred Steyer w 2018 i jak to wygląda dzisiaj? ✅ Module Federation – czy to faktycznie mikrofrontendy? ✅ Problem wersjonowania frameworków i twardego couplingu ✅ Multi-repo kontra monorepo – dlaczego niezależność bywa iluzją? ✅ Jak uniknąć pułapek rozproszonego monolitu? W teorii miało być pięknie: niezależne zespoły, niezależne technologie, niezależne wdrażanie. W praktyce? No cóż… Jeśli pracujesz z mikrofrontendami (albo dopiero się do tego przymierzasz), ten odcinek może oszczędzić Ci wielu frustracji! 🚀 Gwiazda programu: https://module-federation.io/💬 Masz swoje doświadczenia z Module Federation? Jakie mieliście z tym problemy? Podziel się w komentarzu! 👍 Zostaw suba, jeśli chcesz więcej technicznych deep dive’ów! #MicroFrontends #ModuleFederation #Angular #Frontend #RozproszonyMonolit #Programowanie #SubiektywnyFrontend #IT #Monorepo #MultiRepo
W dzisiejszym odcinku powiemy wam dlaczego mikrofrontendy w module federation to kłamstwo. Ja nazywam się Jakub Pawlak. Ja jestem Aleksander Lubych. A to Subiektywny Frontend. Chciałbym zacząć od tego, że ja w 2018 roku trafiłem na NG Poland i tam była prezentacja Manfreda Steyera. Prezentacja o mikrofrontendach. I to zmieniło zupełnie moją karierę. Na początku, jakby na tej prezentacji, była mowa o webkomponentach i faktycznie wtedy to mi się bardzo przydało do mojej pracy i zacząłem robić webkomponenty. Ale już rok później pojawił się nowy gracz.
New kid on the block. Module Federation. I to było kłamstwo, że to są Microfrontendy. I teraz to wiem. A jaka była twoja historia? Jak dotarłeś do tego, że Module Federation to kłamstwo? No, akurat do tego dotarłem już tutaj, w Becu, bo nie miałem instrukcyjności przed Becem. Wcześniej pracowałem na Microfrontendach, ale akurat to były nieco inne Microfrontendy, gdzie było renderowanie po stronie backendu, więc Shell był taką hybrydą. Miał za zadanie ściągnąć konfigurację microfrontendów po stronie serwera, a potem po prostu wyrenderowanie tego już na froncie.
I cały routing był też po stronie serwera. Brzmi bardzo skomplikowanie. To było bardzo skomplikowane. No i to było fajne. No dobra, dobra, ale to w ogóle nie jest module federation. A tutaj minęło 7 lat i wchodzimy sobie teraz na stronę module federation i to cyk, pyk. Microfrontend architecture. No i teraz pytanie w takim razie, po co my w ogóle o tym mówimy, skoro tutaj mówią, że mikrofrontendy, a my mówimy, że nie mikrofrontendy, to co, może od razu wkoczymy w temat. To jak to z tym module federation i mikrofrontendami jest? Co to jest w ogóle za mit, że module federation to mikrofrontendy? No takie odważne stwierdzenie, prawda? Bo wszyscy mówią o tym, że to mikrofrontendy, że to daje taką niezależność, no bo na tym tak naprawdę polegają mikrofrontendy, a tak się okazuje... Tutaj tu w trące już mówiliśmy o mikrofrontendach, więc jak ktoś nie odrobił lekcji, to tutaj odcinek...
I to, jak definiujesz i to, że musisz mieć routing na przykład tych Microfrontendach i ten routing jakoś porzenić, bo tak teraz zacząłem sobie myśleć o tych web-komponentach i tym POC, które robiliśmy u nas i po prostu się zawiesiłem, Jakub. No bo to jest właśnie skomplikowany temat, bo module federation samo w sobie jest do ładowania i lazy-loadowania i share'owania paczek. Ale możemy to użyć też w różnych kontekstach. A musi być coś, co to orkiestruje i coś, co tym zarządza i tym routingiem zarządza, więc tam są jeszcze inne aspekty tego systemu mikrofrontendowego. Ale wracając do clou. Monorepo, coupling na poziomie wersji frameworka. Wyobraźmy sobie, że jesteśmy w Angularze. No w React'cie jest dokładnie tak samo.
Zakrywam się. To jest dzisiaj jakoś ciężko, dzisiaj jestem polskim. Ciężko. Ukrywamy się za feature-toggle'em, no i tak naprawdę mamy czystą... Sytuację sterujemy tą widocznością przez Feature Toggle. I tak można uzyskać tą niezależność, ale to nie zawsze jest takie proste. Szczególnie jeżeli masz monorepo, które było rozwijane bez trunk base od samego początku i bez właśnie Feature Toggle i są jakieś pewne naleciałości. Stąd ta decyzja z tym module federation przy Microfrontendach musi być świadoma. Jak byśmy to mogli podsumować z tymi mikrofrontendami i module federation?
Pokazano wszystkie 5 dopasowań. Transkrypcja generowana automatycznie i niesprawdzana ręcznie — może zawierać błędy.
Kliknij, aby znaleźć fragmenty, w których pada.
Odcinek opublikowany 07.03.2025
Aleksander Lubych i Jakub Pawlak zapraszają na kolejną dawkę brutalnej prawdy o mikrofrontendach!
Czy Module Federation to naprawdę złoty środek na mikrofrontendy? A może to po prostu kolejny sposób na stworzenie… rozproszonego monolitu? W tym odcinku obalamy największe mity na temat Module Federation i sprawdzamy, czy rzeczywiście daje nam prawdziwą niezależność zespołów i technologii.
🔥 O czym pogadamy?
✅ Jaką wizję mikrofrontendów miał Manfred Steyer w 2018 i jak to wygląda dzisiaj?
✅ Module Federation – czy to faktycznie mikrofrontendy?
✅ Problem wersjonowania frameworków i twardego couplingu
✅ Multi-repo kontra monorepo – dlaczego niezależność bywa iluzją?
✅ Jak uniknąć pułapek rozproszonego monolitu?
W teorii miało być pięknie: niezależne zespoły, niezależne technologie, niezależne wdrażanie. W praktyce? No cóż… Jeśli pracujesz z mikrofrontendami (albo dopiero się do tego przymierzasz), ten odcinek może oszczędzić Ci wielu frustracji! 🚀
Gwiazda programu: https://module-federation.io/
💬 Masz swoje doświadczenia z Module Federation? Jakie mieliście z tym problemy? Podziel się w komentarzu!
👍 Zostaw suba, jeśli chcesz więcej technicznych deep dive’ów!
#MicroFrontends #ModuleFederation #Angular #Frontend #RozproszonyMonolit #Programowanie #SubiektywnyFrontend #IT #Monorepo #MultiRepo