What to use when creatign a Mobile app?

If I am developing a Meteor web application and also want to build a mobile application that uses the same data, how should I go about structuring this?
My concern is that my web application uses the MongoDB reactivity, but my (yet to be developed) mobile app, built using React Native for example, will likely need to call API’s. So should I be re-structuring my Meteor web applicaiton to use API’s instead and, if so, what are the best ways to do this - Relay + GraphQL / Meteor.call / Redux + fetch() ?

1 Like

You can simply use Apache Cordova. You’ll needn’t to modify any code [till the time you are fine with the same look and feel].

I believe React Native app are better - but you’ll need to do a lot of extra coding.

1 Like

Look into React Native, React Native Web and Apollo

Grigio has a nice example of the former two to look into: https://github.com/grigio/my-curriculum-app

3 Likes

So, React Native is going to require programming. React (the JS flavor) can be slow on mobile if you have a lot of reactivity, but if your app is already built in React then you may have no choice. When FB created React they planned React Native for their mobile apps, so either you stick with their whole design paradigm or use another framework.

I won’t recommend React Native
React Native !== Native App
React Native === Hybrid App

React Native run React app using JavaScriptCore similar like how Meteor Cordova work
https://developer.apple.com/reference/javascriptcore

It just provide bridge to native component so you’ll get native feel. Cordova also provide bridge to Native component. If you willing to give some time to google, you’ll find bunch of stable and mature Cordova native component. So, React Native is not different with Cordova

React-Native drawbacks:

  • You can’t use CSS. You’ll find hard styling with React-Native. It uses inline style and only support very limited style. Even doesn’t support critical style like zIndex.
  • Meteor doesn’t officially support React-Native. You’ll find hard to integrate with Meteor.
  • React Native !== React. You need to invest in learning if you choose React-Native

NativeScript https://www.nativescript.org/ much better. It support CSS and HTML. But again Meteor doesn’t officially support NativeScript. Just go with Meteor Cordova. It’s super easy

2 Likes

I’m a front-end developer, I like to sharing knowledge.

What is the information you are sharing ? @mattcarson

hi gkaradag, I’m a new member of this forum & posted here by mistake.

I apologize for the mistake.

Opps, my apologies pls @mattcarson
Welcome :smiley:

hello, I’m searching a good forum where I can find the solution about android development. So can you tell me If its right place or not?

@mattcarson, Unfortunately, this forum is not very good for mobile development topics. As far as I see, the least mature part of the Meteor eco-system is mobile development. The approach is like that; “we give you Cordova to wrap your web app and deploy it a mobile device, you should do the rest …”. I believe you have already read the mobile section in the guide.