ucladevx/Bruin-Bite-iOS

Redo the Login/Signup UI code

Closed this issue · 1 comments

Motivation
Right now, the UI for the login is extremely buggy and not user-friendly or developer friendly. It doesn't use a Navigation Controller (which it absolutely should), does labels/buttons all wrong and basically has a lot of things going against it and makes for an overall buggy experience.

The Task
Redo the entire UI flow for the login/signup - keeping basic iOS development principles in mind. Follow the designs on our Zeplin:

You can ignore the action performed by the Facebook log in button for now, we will implement that separately.

All of these new ViewControllers should be placed in a new storyboard called login.storyboard and be embedded in a navigation controller such that each screen leads sensibly to the next. Do not worry about linking this new storyboard/nav controller to the main app for now, just create it.

Some requirements:

  • Design of the VCs should precisely match the designs on zeplin
  • Proper constraints should be in place that are tested across all screen sizes ranging from the iPhone SE to the iPhone XS Max.
  • Follow standard practices in terms of segues and navigation controllers and write the segues such that the VC-VC segues are created in storyboard, but are called upon the click of the relevant button in the VC code so that we can pass any data along if needed.
  • Please refer to the contribution-guide for a quick primer of our git workflow.
  • Each input field should have an associated error message label that is hidden at the beginning of the view's lifecycle and can be made visible programmatically. Get creative about the programmatic interface you design for these error labels (so that the person who is writing the network calls has an easy time populating these and making these visible with error messages from the server)

Acceptable criteria:

  • A new storyboard login.storyboard that meets all of the above requirements and implements the designs from zeplin.

Please ask clarifying questions in this issue thread!

Closed by #99 which was merged as part of #105