Hello fellow developers! ๐
I am currently engrossed in the development of a new feature for my app, Typogram, that aims to support anonymous user sessions of the app. Iโm at a crossroads and could use some wisdom.
Quick background:
So, here lies the fork in the road: Should I implement anonymous user sessions using Firebase anonymous accounts or should I lean on the local IndexedDB?
๐ฅ Firebase Anonymous Accounts
๐ฅ Local IndexedDB
Firebase tips the scale when it comes to data insights, offering a clearer perspective on the number of anonymous users and allowing for a nuanced tracking of their behaviors. But, itโs important to mention that to harness this, a decent investment of development time is necessary.
Iโm eager to hear your valuable opinions, experiences, or insights on choosing the most effective path. Your input will be immensely helpful in navigating this decision!
Thank you in advance! ๐
I would like to provide you with some insights that might help you make better decisions.
If I were to make something anonymous, I would opt for local storage, such as IndexedDB. It can handle a substantial amount of data locally, and you can also sync it to the cloud or your own server if you ever wish to collect some statistical data.
This is based on my personal preferences since I already have experience building a similar system with IndexedDB, and I lack experience with Firebase. Firebase might offer advantages that I may have overlooked. It also depends on the nature of your app.
For instance, if you only need simple session handling to persistently identify users uniquely so they can participate in discussions with their own unique usernames, you can do so without any issues with IndexedDB or localStorage. I recently launched an anonymous discussion platform using localStorage to store the users' uid, which is called Tailgram (coincidentally, it sounds somewhat similar to Typogram :)).
This approach also has its disadvantages: the stored data can be deleted from users' browsers or when users switch to different browsers, but the impact is not that significant.