Thanks for your reply and insight, it’s very helpful. I read an assessment of Meteor that described it as a collection of powerful features that don’t all have to be used. I’m considering it mostly for cross-platform support, the HTML/CSS/JS layout, and the HTML templates, and of course because it’s open source. I probably won’t even need reactivity. The templates in my app may not be reactive, so I could roll my own simple template system if I don’t use Meteor. I’ll consider other cross-platform tools that use HTML/CSS/JS, including React Native, though I’d rather not trust a tool by facebook. Cordova is a possibility; I’m reading about it now.
I may have confused things with the mention of the message-passing server-- it’s a separate piece of software, not part of the Meteor app. So yeah, I realize this is not a standard Meteor use case. This server could be written in any language, even by a third party, if it conforms to a standard I’ll define. So Meteor would only be used for the mobile app. There would be no reactivity with the message-passing servers-- if reactivity is used, it would only be with the local (mobile-side) datastore (which would be updated by the network part of the app).
I don’t think the datastore will be very complicated, but it could hold a lot of data, and I will want to sort messages by date, sender, status, etc. It looks like minimongo doesn’t support indexes, and it’s not persistent anyway (which I need). Do you know of a client-side datastore that works well with Meteor, is persistent, and ideally supports indexes?
It sounds like responsiveness will be acceptable, since I probably won’t be using reactivity, especially as devices get faster.
My main remaining question is: Can I use normal TCP sockets in Meteor? I may or may not use UDP in the future. I searched about this, but couldn’t find any clear answers.
Thanks again, I really appreciate this!
Best,
James