Decentralized Module Federation For Microfrontends
https://positive-intentions.com/blog/decentralised-architecture

Decentralized Module Federation For Microfrontends
https://positive-intentions.com/blog/decentralised-architecture
#Decentralized #Module #Federation #Microfrontend #Architecture
I'm working on a #webapp and I'm being #creative on the #approach. It might be considered #overcomplicated (because it is), but I'm just trying something out. It's entirely possible this approach won't work #longterm. I see it as there is #onewaytofindout. I don't recommend this approach. Just sharing what I'm trying/#investigating.
How it will be #architected: [https://positive-intentions.com/blog/decentralised-architecture](https://positive-intentions.com/blog/decentralised-architecture)
Some #benefits of the #approach: [https://positive-intentions.com/blog/statics-as-a-chat-app-infrastructure](https://positive-intentions.com/blog/statics-as-a-chat-app-infrastructure)
I find that #modulefederation and #microfrontends to generally be #discouraged when I see posts, but I think it works for me in my #approach. I'm #optimistic about the approach and the #benefits and so I wanted to #share details.
When I serve the #federatedmodules, I can also host the #storybook statics so I think this could be a good way to #document the modules in #isolation.
#Cryptography modules - https://cryptography.positive-intentions.com/?path=%2Fdocs%2Fcryptography-introduction--docs
#P2P framework - https://p2p.positive-intentions.com/?path=%2Fdocs%2Fe2e-tests-connectionstatus--docs
This way, I can create #microfrontends that consume these #modules. I can then #share the #functionality between #apps. The following apps are using a different codebase from each other (there is a #distinction between these apps in #opensource and #closesource). Sharing those #dependencies could help make it easier to roll out #updates to #coremechanics.
#P2P chat - [https://chat.positive-intentions.com/](https://chat.positive-intentions.com/)
#P2P file transfer - [https://file.positive-intentions.com/](https://file.positive-intentions.com/)
The #functionality also works when I create an #Android build with #Tauri. This could also lead to it being easier to create #newapps that could use the #modules created.
I'm sure there will be some distinct #test/#maintenance #overhead, but depending on how it's #architected I think it could work and make it easier to #improve on the current #implementation.
Everything about the #project is far from finished. It could be seen as this is a #complicated way to do what #npm does, but I think this #approach allows for greater #flexibility by being able to #separate #opensource and #closesource code for the #web. (Of course as #javascript, it will always be "source code available". Especially in the age of #AI, I'm sure it's possible to #reverseengineer it like never before.)
(mastodon might not be the place for something like this, so let me know if you dont like this kind of content. i typically post on reddit and would like to shift it more towards mastodon. i also use lemmy, but mastodon has a better reach.)
The 5 Best Frameworks For Micro Frontends.
Los 5 Mejores Frameworks Para Micro Frontends.
https://blog.nubecolectiva.com/los-5-mejores-frameworks-para-micro-frontends/
Bin auf der Suche nach Informationen zu Microfrontends mit Server Side Include oder Edge Side Include.
Gibt es da gute Blogs? Gerne auch seeehr alte? Ich kenne nur Zalando Mosaic.
Bonus: Progressive Enhancement. Eine Prise JavaScript nur für Ajax/Fetch, View Transitions oder um HTML Elemente auszutauschen.
Spotify squad 1: I'm going to put notifications at the bottom of the screen!
Spotify squad 2: I'm going to put navigation and other buttons at the bottom of the screen!
Spotify user: Oh no!
I'm personally deeply deeply sceptical of #microfrontend 's but I'm curious to hear from people that are pro MFE's in the #webdev space.
For context, my view is code splitting is old tech now. It's trivial to only load the code we need. Just use a dynamic import. If merge conflicts constantly arise in a large team its because there's too much DRY and not enough WET.
Every company's obsessions with having a bespoke component library is also completely bizarre to me.
Microfronends as a #decentralized alternative to #npm.
While i can smush everything into a #monoRepo, i wanted to explore the idea of using #Microfrontends as a kind-of self managed alternative to #npm.
Microfronends have been around for a while and i've come across many different approaches. I want to share how im using microfrontends in my project.
Im using #Webpack 5 #moduleFederation to create the #microfrontend. there are some interesting features that i dont think are being mentioned elsewhere:
- Dynamic Remotes: Modules can be loaded from various endpoints. We can use a custom function to ping different URLs and determine the fastest one for loading the required module.
- #Selfhosters can manage modules independently, enhancing control over updates and #security on #opensource projects.
- Development Experience: By using dynamic-remotes and running modules locally during development, it can speed up testing and iteration.
- Scalability: The approach allows for #CDN scaling with module deployments on multiple cloud providers. currently, my redundencies are on AWS S3 + github-pages... but i can see how this can be scaled to more cloud providers.
Im aiming for the architecture to look like the following. Let me know your thoughts on my approach and if its something you would consider for your project.
https://positive-intentions.com/blog/decentralised-architecture
https://positive-intentions.com/blog/statics-as-a-chat-app-infrastructure
Decentralized Micro-frontend Architecture
Blog: https://positive-intentions.com/blog/decentralised-architecture
GitHub: https://github.com/positive-intentions/chat
Demo: https://chat.positive-intentions.com
Follow for more!
In practice, the toughest part of stream-aligned teams is owning the full stack, especially the front end, where UIs need to span vertical streams. Coordinating and building UIs, where teams own their data, isn’t easy. Composite UIs, like Micro-frontends, can be tricky, and monolithic UIs break stream alignment. How have you managed this challenge in your teams? #teamtopologies #frontend #ddd #microfrontend #microservices
Ich war beim SoftwerkerCast der codecentric AG zu Gast. Es geht ein halbes Stündchen um das Thema #microfrontend
Was ist das? Welches Problem lösen diese? Und welche Gedanken könnte ich mir machen, wenn ich diese einsetzen möchte.
Hört doch mal rein!
https://podfollow.com/1592472699/episode/9e404a9b88d77e74865d7e1d1e8a021122eb5358/view
Anyone have a good implementation of using ASP.NET Core for a Mincro Front-End?
#aspnet #aspnetcore #microfrontend
Beyond Micro Frontends: Effective Composable Decoupled Applications on Cloud Native Infrastructure
https://www.infoq.com/presentations/micro-frontend-cloud-native/
"I hope, by the end of this talk, you'll have a new perspective on building robust and scalable applications that can meet the demands of modern cloud environment, but also of the modern frontend ecosystem, and that you can do it from a frontend perspective." -- #NataliaVenditto
#Microfrontend Migration Journey – Part 1: Design: https://thesametech.com/micro-frontend-migration-journey-part-1/
I stopped reading at "and I was the only full-time frontend engineer on the team". Really? A single dev wants to implement a solution whose main benefit is to scale the dev team??? Hype-driven development is not dead
https://dev.to/pahanperera/react-micro-frontends-with-webpacks-module-federation-32ii - #React #MicroFrontend with #Webpack's module federation. Great post https://github.com/PahanPerera.
https://dev.to/xanderselorm/introduction-to-micro-frontends-using-net-blazor-wasm-part-1-lc9 - a series on creating a #microfrontend with #Blazor #WASM as the host with #React as one of the pieces. Great exploration https://github.com/XanderSelorm.
Does Module Federation support when rollback of the remote app to the previous version without a rollback host?
Does the host accept the previous version of the remote app?
Micro Frontend dev · Breaking down complex applications into smaller, deployable components https://ilo.im/109zj7
_____
#development #launches
#UI #webdevelopment #webdev #frontend #MicroFrontend #architecture #modularization #approach
Trying to make some sense of module federation. How does it handle multiple versions of libraries?
E.g. feature-a uses design-system@1.0.0 and feature-b uses design-system@2.0.0?