I have a web app - it's more complicated than a todo list but for simplicity sake let us assume it is a todo list. The user has the choice to sign up and create an account thus allowing them to store all their todos to a database. The user also has the option to test out the app as a guest. If they are acting as a guest I want them to be able to save their data and access it - even if they never create an explicitly authenticated account.

As far as I know their are two ways to do this.

One is to simply store their data in the client and give the user the choice to export/import it as a JSON doc.

The other choice is to present the user with a unique key one time that acts as their log in credentials in the database. This key would need some ephemeral analog input to make it truly unique - like weather data or something.

My question is:

Are other ways to go about this that I am not aware of? My ultimate goal is to allow a user to have the most friction-less experience as possible when trying out the application ( a medium/large size business app ).

As a side note I am using Create-React-App / JavaScript / Node.js and Firebase for this project. Firebase has different sign-in authentication schemes

  • Apart from the technical side you ask about, if your app is fully functional without an account, what benefit would I get, as a user, from creating an account? – Bart van Ingen Schenau Sep 16 '19 at 6:54
  • More convenient storage. In the other two schemes I mentioned if the user loses their key or forgets to export their JSON doc then they lose their data. – William Sep 17 '19 at 1:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.