Separating Meteor Server From front end CLI beneficial?


#1

Hi,

I am developing an Angular4 + Meteor app for a while now. I have read a lot about this build/dev process and I have came down to a point of a fundamental question I have been thinking about. That is, should i separate my Meteor project into two separate builds, Front end Angular CLI and backend meteor. I came down to this thought process because the features Angular CLI supports AoT, tree shaking and lazy loading which doesn’t seem to be possible through Meteor CLI yet. I have been looking at meteor-client-bundler to have this setup. Although Meteor has dynamic imports in 1.5, I still don’t believe it will give me the performance boost as native angular CLI would give me. I have noticed a large bundle and very slow rendering times.

Thinking one step ahead, what if Angular comes out with a new build process that Meteor does not inherit straight away. I lose this benefit until Meteor catches up…

Has Anyone have any experience with this type of thinking and implemented a solution. It would be nice to hear from the community before I make a decision to start doing this. As of right now I think this would be the best solution to get the benefits of both worlds and having decoupled CLI.


#2

That’s a very good question.

First, just want to update you that we’ve published new angular-compilers package that supports all the features the Angular CLI gives you:

  • Typescript compilation
  • Assets compilation (HTML, styles)
  • Angular’s AoT compilation
  • Rollup’s bundling with Tree Shaking

But with the Meteor CLI itself!

and added a lot of examples with for all those features plus an example with Angular CLI if you want to use it instead of the Meteor CLI:

We’ve also updated all the latest versions including the latest Angular 5 and Meteor 1.6.

As to your question - I guess it comes down to what features each one of those will have in the future that will be best suite your Angular app.
I know that the Angular team is working very hard on the Angular CLI, including maybe a future support for Bazel, so maybe the Angular CLI + Meteor Client Bundler is a safer choice.

On the other hand, Meteor is now improving rapidly and now that it is in feature parity with the other popular solutions (Angular CLI and create-react-app) then the next features there could be very interesting.

Now all you need is to choose :wink:


Build/Deployment Resources/Recommendations for `angular-meteor` Angular CLI project?