Regarding the login forms, it is advised to hide the password as default and providing the option to the users to view it in case they need to.
When it comes to registration forms though that the users are creating their password, they might type it wrong so they would probably need to view it in the default state. So in order to avoid typos, we can consider it as a good practice to show the password in default state with an option to hide it.
On the other hand, it is a convention to always hide the passwords even when it comes to registration forms cause this is what users recognise in general. For example,Yahoo and mailchip registration forms use the functionality of the eye and have the password hidden as default and if the users want to view it, they will click on the eye.
What would you think is the best user experience?