I want to develop a native application to ios. I want to build an app that is a mix of Instagram and YouTube,generally. I need to persist and get data to and from the database,store user data(images,videos,audio etc.), Allow user to edit his uploaded media ( images,videos,audio etc.).Also things such as drag and drop, GPS and image edition are added. So far I think these are the most demanding features that app will contain. I think about using swift for the front end, but I am still considering what language and database to go with to develop this application. I though I should maybe go with php laravel framework RESTful api(since I know it already), combined with firebase. Any better suggestion you might think about, and why? Will appreciate your honest thoughts about this.
Personally I'd suggest Node.js + MongoDB for the backend. PHP is...well...awful in my opinion. But I am sure PHP would work too. To avoid vendor lock-in, I would advise you to stay away from Firebase. Pretty much everything you can do with Firebase can also be done with PHP or Nodejs, with the added benefit that you don't need to rely on Google (a notoriously unreliable company when it comes to their technical products). They'll probably still be around in a few years...or they might kill of Firebase, like what happened to Parse. As for the database, if you want to be able to quickly scale, I would suggest MongoDB since it supports sharding natively, MySQL doesn't. You will definitely want to use Swift if you are gonna be dealing with media.
I don't think Laravel + SQLite would be anywhere near as easy to scale as a MongoDB based solution would be.
While I would suggest it....I would suggest you do what you know. If you know how to implement a PHP + SQLite based backend, then go with that.
I am actually more experienced with PHP laravel framework and MySQL much more than node.js and Javascript generally. But I was really putting the last hours in order to determine the right language for developing the back-end and the database. And I reckon that really node.js and mongoDB , along with Swift will make the perfect match! node.js seems to be good for my app, as it does not really require very complex computing, and MongoDB is ideal for social networking features. These are the main reasons I am going with this stack So eventually ,your suggestion is indeed the best solution. Also, +1 for your take about scalability, it's easier in MongoDB,rather than MySQL.