Build a large javascript application

Hello Everybody,

I’ve been tasked to design and create a large javascript application, which will involve the effort of several developers across a very large codebase.

I have perfectly in mind how to design the backend to respect my goals, but I can’t imagine how to realize a modular frontend.

I would prefer very much to stay with Blaze, and my questions are:

  1. How do I create a modular frontend?
  2. How do I let modules inject dependencies for the front end?
  3. Can anyone suggest me any book or resource on the topic of modern javascript application design?

First of all for super-large apps, I suggest React. And for React you can find a lot of materials out there.

1 Like

First of all for super-large apps, I suggest Vue. And for Vue you can find a lot of materials out there.

4 Likes

Have you consulted the meteor guide? They talk about this and have an example project. https://guide.meteor.com/structure.html#splitting-your-app

I don’t see why you couldn’t split up your front end into multiple apps regardless of what front end framework you are using.

1 Like

The only issue I’ve run into while trying to do this is, if you have one application that feeds into another via user impersonation. There’s no elegant solution to going back and forth between them. In my example, I have an admin app, where the admin will from time to time need to log in to the user application as a different user. It works if the application is the same, if they’re two different apps, it’s much harder.

1 Like

The plugins I have in mind cover a narrow scenario, for which a whole app would be overkill.

For example, a plugin could add a feature which would require an additional configuration panel in the menu.

How do I inject the additional menu entry in the layout?

I can inject a route elegantly, but I’m not sure which is the best way for the frontend.

Maybe I should switch to react, but that would alienate many possible contributors. I would prefer not to.