By default, we have been using a Meteor package named autopublish. This means that we haven’t had to code specific publishevents for changes to be broadcast from the server to the client. This is great for testing, but we want to have a bit more control over what events and documents get published so that we that can improve both performance and security.

If we have a large dataset, we may not want to return the entire collection every time. If autopublishis being used, the entire collection will return, and this can slow things down or expose data that we don’t want to expose.