4GeeksAcademy / plant-sitter-pro-miami-68

Capstone project
5 stars 1 forks source link

Build data models and classes to be able to store user info that could be split into profile/ preferences etc.. #6

Closed Thisisgerry123 closed 4 weeks ago

Thisisgerry123 commented 1 month ago

Build acceptance criteria: Examples:

cesaramcolson commented 4 weeks ago

---Backend for Clients

-Frontend As a Client, I can create and update my profile with my preferences, plant types, and location so that providers can offer relevant services to me. #4

acceptance criteria for frontend User can update my preference to allow or not allow a caretaker to my house User can update address on an input or a map or a dropdown list.

--Tasks to be Done in for the Backend

-Create Classes

  1. Users id (PK) email password_hash created_at updated_at
  2. ClientProfiles id (PK) user_id (FK) preferred_plants: JSONB that stores an array with types of plants service_preferences: JSONB that stores an array with service preferences location created_at updated_at

-Create Endpoints in the API POST /client_profiles: For clients to create their profile. PUT /client_profiles/{id}: For clients to update their existing profile. Create also Get and Delete methods to be able to get clients data and delete for a better user experience.

-Integrate with Geo Location API Geo Location API to manage addresses and locations. Stores locations in the location field of the client_profiles table.

-Authentication and Security Ensure that only authenticated users can create and update their profiles using token validation

-Test endpoints to see if they work propperly Verify that the entire flow, from creating profile to updating preferences, works smoothly.