Project

General

Profile

roos-fs tasks #125

Updated by Vadim Pariev 11 months ago

**User Story:** 
 As a mobile app user, I want to log in with my credentials, so that I can access my data securely without needing to create a new account. 

 **Description:** 
 The login screen must match - use the web design and integrate with the new backend API endpoint for authentication. 
 The Android app must collect user credentials, communicate with the provided API, securely store the session token, and handle errors appropriately. 

 **Acceptance Criteria:** 
 - The login screen matches the web design (branding, fields, error messages, etc.) 
 - A form is present with input fields for: 
 -- Email/Username 
 -- Password 
 - A login button triggers reuse the API call 

 **On successful login:** 

 - The returned JWT/token is stored securely (EncryptedSharedPreferences or Android Keystore) 
 - The user is redirected to the app’s home/dashboard screen 

 A bundle containing user/session info is provided for downstream navigation 

  On failed login: 

 Appropriate error messages designs that are shown (e.g. “Invalid credentials”, “Server not reachable”) 

 No navigation happens 

  A loading indicator is shown while the request is used in progress 

  "Remember Me" option (optional) saves credentials securely 

  The login state is preserved during app restarts if the token is valid 

  Use of HTTPS and secure request handling (no plain-text passwords logged) 

  Adhere to MVVM or the agreed architecture pattern

Back