Meteor for admin panel with optimized public pages

Hi there!

I am scoping out using Meteor for a project I am working on and I am pretty blown away by what I have seen so far. However, since I am new to the whole NodeJS/Mongo world I would like to ask for some advice.

I would describe the application as a live scoreboard. The data for the scoreboard is managed by admin users, and that admin panel is a great fit for Meteor.

The scoreboard itself on the other hand is very simple. It just displays the scoreboard and automatically updates when changes have been made by the admin. The majority of users (say 1 in 1000) will only ever use the scoreboard.

I am concerned that implementing both in one app would:

  • Bloat the app size. The majority of JS and templates will only be used by the few admin users.
  • Having 1000s of meteor clients keep a Websocket alive just to wait for updates seems wasteful on server resources and would drive up cost.

Does anyone have any suggestions how to do this elegantly without building two completely separate apps and duplicating code?

Thanks a lot!

  • Dennis

You can put duplicate code into local packages. Each app can import the local packages. In Meteor, it’s relatively easy to setup, here’s a good article :

I think the websocket update is the default Meteor way to do it, you could probably do it another way, like poll with low frequency. What did you have in mind here ? I don’t think this issue is directly related to combining the admin app with the public facing scoreboard app. You can manage which clients subscribe to which updates “publications”.