So the Xello project did not go at the consistency I had hoped for. Mostly because of a few consecutive reasons.
I started with choosing Firebase as the backend for the project prototype but realised that it would serve only the minimum viable product and not a full feature replacement. Simply because firebase is not suited for the data a social application would generate. Too many relations between entities and I would end up duplicating the data and won't be able to scale beyond a point. So the search for an alternative stalled the initial momentum.
At this point let me point out that since I am the only person working on this, and even if I had a few hands working on this, I prefer a serverless solution as it reduces the overhead of managing the infrastructure significantly and also reduces development time due to the available APIs.
Next I also got busy with my job which was going through a post covid launch phase. Not much to write here, we all know how that works out.
By this time I narrowed down on Fauna DB, which seems to check all the boxes with it being serverless, supports relations between entities while being a NoSQL DB and has drivers for most development frameworks. Though I keep questioning my decision given that I still need to figure out how the pricing would end up being for our workload and that it is not a very popular solution like Mongo or Firebase.
I could go with MySQL and Node for backend and AWS Cognito or firebase for user management but then I fall back to what I did not want to do in the first place, build the entire backend from scratch.
Lastly, my MacBook is unable to handle the load of iOS and Android simulators running simultaneously so that dampened the sprits to some extent. All that is set to change in a month or so.
So all the history done, what stack do you all suggest based on your experience to run the backend? Just wanted to get some alternative perspective and spread some learning in the process.
I started with choosing Firebase as the backend for the project prototype but realised that it would serve only the minimum viable product and not a full feature replacement. Simply because firebase is not suited for the data a social application would generate. Too many relations between entities and I would end up duplicating the data and won't be able to scale beyond a point. So the search for an alternative stalled the initial momentum.
At this point let me point out that since I am the only person working on this, and even if I had a few hands working on this, I prefer a serverless solution as it reduces the overhead of managing the infrastructure significantly and also reduces development time due to the available APIs.
Next I also got busy with my job which was going through a post covid launch phase. Not much to write here, we all know how that works out.
By this time I narrowed down on Fauna DB, which seems to check all the boxes with it being serverless, supports relations between entities while being a NoSQL DB and has drivers for most development frameworks. Though I keep questioning my decision given that I still need to figure out how the pricing would end up being for our workload and that it is not a very popular solution like Mongo or Firebase.
I could go with MySQL and Node for backend and AWS Cognito or firebase for user management but then I fall back to what I did not want to do in the first place, build the entire backend from scratch.
Lastly, my MacBook is unable to handle the load of iOS and Android simulators running simultaneously so that dampened the sprits to some extent. All that is set to change in a month or so.
So all the history done, what stack do you all suggest based on your experience to run the backend? Just wanted to get some alternative perspective and spread some learning in the process.