yesi07111 / IS_Project_Playground

🔒 This app manages children's park activities, enhancing experiences for families. It offers facility info, schedules, and supports roles like parents, educators, and admins. Features include activity management, resource availability, and reservations. 🛡️
0 stars 0 forks source link

Implement User Profile Management and Image Caching #33

Open yesi07111 opened 2 days ago

yesi07111 commented 2 days ago

Tasks:

  1. Frontend Image Caching:

    • Implement a caching mechanism to store images locally once they are loaded.
    • Ensure that images from previously visited pages are retrieved from the cache to improve loading times.
    • Test the caching functionality across different browsers to ensure compatibility.
  2. User Profile Page:

    • Design and develop a user profile page in the frontend.
    • Include visual options for editing profile details such as profile picture, username, first name, last name, email, and password.
    • Ensure the UI is responsive and user-friendly.
  3. Profile Picture Update:

    • Allow users to upload a new profile picture.
    • Implement image validation and resizing if necessary.
  4. Edit User Information:

    • Provide fields for users to update their username, first name, last name, and email.
    • Implement client-side validation for each field.
  5. Email Change Verification:

    • If a user changes their email, send a verification email to the new address.
    • Ensure the email contains a link to verify the new email address.
  6. Password Update:

    • Require users to enter their current password before setting a new one.
    • Send a verification email to confirm the password change.
    • Implement strong password validation rules.
  7. Forgot Password Functionality:

    • Develop a feature that allows users to reset their password via email.
    • Send a secure link to the user's registered email to reset the password.
  8. Manage Reviews:

    • Display a list of the user's reviews on the profile page.
    • Allow users to edit or delete their reviews.
  9. Manage Reservations:

    • Display a list of the user's reservations.
    • Provide options to edit or cancel reservations.
  10. Backend Endpoints:

    • Develop RESTful endpoints for updating user profile information.
    • Implement endpoints for password reset.
    • Ensure all endpoints are secure and validate user permissions.