What is the best practice of micro frontend on EmberJS?

recently , I noticed a new concept of micro frontend . like: Simpler Microfrontends Implementation with React and ESNext · RohitRox @ Tech.

So are someone have use this kind of architecture?

Thanks.

The summary of micro-frontends from their page:

building a modern web app with multiple teams that can ship features independently.

Is basically the same as the reason for Ember Engines. Engines lets different teams build separate Ember apps that can come together into a single app in production.

It’s a good fit for very large organizations that really want strong separation between teams. It’s not a good fit for a small team where each person is likely to work within many different parts of the app.

1 Like

It’s not a good fit for a small team where each person is likely to work within many different parts of the app

Maybe not as a general rule (engines can be some work to set up) but anecdotally it’s still very nice for keeping code organized and isolated in a large app. My team is exactly that ^ and we have our app broken into a number of in-repo engines and overall I’d say it’s been a very good experience.

Is it possible to build and deploy the ember engines without building main app ?

Not out of the box. There has been some discussion in discord (this post is the start of a discussion, for example) but it wouldn’t be trivial with the current build system. Once you can build with Embroider you could figure out how to do this with some sort of manifest via webpack.

hi, @dknutsen @ef4 thank you for the post. I don’t have access to any of the channels. Is there any progress on building and deploying the engine from the external repo without building the host app?

Actually, I’m looking for a solution to develop, build and deploy an engine from a separate repo in a destination folder. I’m happy with the first-time configuration in the host app about the engine details and path. But after that, I don’t want to build an app whenever the engine got updated. The engine should be completely externalized to develop, build and deploy.

There have been a number of discord threads about this and I think the short answer is “it’s possible but requires a lot of work” and probably some hacking around. I think it would be really cool to support this but what we do (and probably the easiest solution) is to just deploy the main app via CI/CD pipelines.

Thank you for your response. Could someone help with access to discord threads?

You just need to join the ember discord server and look/ask in the #ember-engines channel