Add a loading screen and a login screen to the app.
Details
The user should see the Nevis logo as the app loads.
The login screen should:
always be displayed first when the app starts.
allow the user to enter their user name and password.
include a button for logging in.
accept any username and password for login.
display the home tab after login.
The account tab’s logout button should take the user to the login screen.
The login screen layout should be both visually appealing and easy to use. Look at other apps for inspiration.
The app should define classes and widgets, in their own files, to improve organization and facilitate testing.
Your code should be clean, readable, and efficient. Follow the Effective Dart guides for help with style.
Extra Credit
Add a button that allows the user to reset their password. The app should prompt for an email address. After the user enters an email address the app should display a message about a password email being sent.
Add an interface to allow the user to create an account if they do not already have one.
Grading
The functionality of your code will be graded according to the following point scale:
load screen is visually appealing | 25 points |
login screen is visually appealing | 30 points |
login scren is always displayed on app load | 15 points |
login button takes the user to the home tab | 15 points |
logout button takes the user to the login screen | 15 points |
extra credit password reset is visually appealing | 5 points |
extra credit password reset is easy to use | 5 points |
extra credit new account is visually appealing | 5 points |
extra credit new account is easy to use | 5 points |
The final grade for this part of the project will be computed as:
final int finalScore = min(max(functionalityScore - (daysLate / 14.0 * 100.0), 0.0), 125.0);
Submission
Submit your code by tagging a GitHub commit as “part5” on Tuesday, April 14th.