I'm researching what Technology Stack I should use to build my product (something like food delivery App) for Web, iOS, and Android Apps. Please advise which technologies you would recommend from a Scalability, Reliability, Cost, and Efficiency standpoint for a start-up. Here are the technologies I came up with, feel free to suggest any new technology even it's not in the list below.
For Mobile Apps -
- native languages like Swift for IOS and Java/Kotlin for Android
- or cross-platform languages like React Native for both IOS and Android Apps
For UI -
- React
For Back-End or APIs -
- Node.js
- PHP
For Database -
- PostgreSQL
- MySQL
- Cloud Firestore
- MariaDB
Thanks!
If you go with react / react native I advice you to go with node. Why ? I first didn't believe coding in javaScript everywhere (back, front and db queries) was making life SO much more easy. I still followed the advice, in the end this is a huge relief. For a small startup project with 1/2/3 devs, using only one langage increases efficiency a lot. You can switch very fast from a topic to another.
My Recommendations: Front End: Flutter because of developer tooling and powerful declarative widget system Back End: Node.js or Go because Node.js has a large ecosystem and Go has a good built in http setup Database: Cloud Firestore because of ease of use, NoSQL, and the ability to set data from the client
Thanks, since Google cloud Firestore is a NoSql database, I'm wondering how does it work for an app where it does daily transactions in a user checkout flow, etc.. ?
I'm not entirely sure what the question is about, as I don't see any problem using Cloud Firestore for transactions, but here is a use case for using Firestore with stripe: https://firebase.google.com/docs/use-cases/payments