React Native vs Vue Native | vue to react native
Ourstackroughlydividesintothreemajorcomponents,thefront-end,back-endandthedatastorage.Forthefront-end,wehavedecidedtogowithReactNativeviaExpo.ThisallowsustotargetbothAndroidandiOSwithasinglecodebase.Expoprovides"managedworkflows"andanSDKthatwillsimplifydevelopmentanddeployment.Fortheback-end,wehavedecidedtousePython.Pythonisthelanguageofchoiceformachinelearning(ML).IthasextensivesupportfortraditionalMLalgorithms(e.g.randomforests)viaScikit-LearnandtheSciPyecosystem.Ontopofthis,ourindustrypar...
Our stack roughly divides into three major components, the front-end, back-end and the data storage.
For the front-end, we have decided to go with React Native via Expo. This allows us to target both Android and iOS with a single codebase. Expo provides "managed workflows" and an SDK that will simplify development and deployment.
For the back-end, we have decided to use Python. Python is the language of choice for machine learning (ML). It has extensive support for traditional ML algorithms (e.g. random forests) via Scikit-Learn and the SciPy ecosystem. On top of this, our industry partner has provided us their current solution written in Python. We decided to expose the back-end as a REST API using FastAPI. This allows us to nicely separate concerns from the rest of the codebase. FastAPIs use of static type hints, validation with Pydantic, and automated documentation allows us to build better APIs faster.
For data storage we decided to use a MongoDB Atlas,...