Accounts don’t have to be explicit. Ask only for the info that is necessary to provide your service and store it in auto generated account and provide a way to tie this account to some other account like e-mail or phone number for account restoration purposes.
The main difference is that the user can start using the service right away and can secure the account some time later.
You can use firebase accounts to manage that. Start with the anonymous account which will create an account with a random UID and use the mechanism to convert the accounts into “registered”. Pretty easy, you don’t even have to create your own custom solution.