I use usernames to login, because some of my users don’t have e-mail addresses (password resets go to their managers).
This means making the following changes:
ForgotPasswordController.php ResetPasswordController.php auth.php login.blade.php email.blade.php reset.blade.php
This just means copying the method from the trait and swapping the email for username.
Just swap the email fields for username.