# Wingspan <img style="width: 500px;" src="https://hackmd.io/_uploads/BymFssWuh.png" /> --- ## Scrum Facilitator- Zak - the usual - **1** total standups - and oh i sometimes updated GH project board ![dr evil gif](https://media.giphy.com/media/Q24NtVbiYgoTe/giphy.gif) --- ## QA- Beth 🐩 Husky 🇬🇷 Cypress ![](https://hackmd.io/_uploads/ryxWy2b_2.gif) --- ## UX- Cameo - wrangled with Styled Components - FONTS - why!? - tool tip hovering & conditional css ♥️ --- ## DevOps- Taha 🫥 - Removed Vercel after day one <div style="width:100%;height:0;padding-bottom:183%;position:relative;"><iframe src="https://giphy.com/embed/Kxy2YUDnDrvdxVsVb8" width="30%" height="30%" style="position:absolute;" frameBorder="0" class="giphy-embed" allowFullScreen></iframe></div> --- ## Code Snippet- Zak ```css const StyledHeader = styled.header` display: flex; justify-content: space-between; align-items: center; height: 200px; background-color: #b9d4c7; background-image: linear-gradient(to right, #b9d4c7, #5372a0); `; ``` --- ### Code Snippet- Beth Add bird to bird cage ```javascript= const [birdcage, setBirdcage] = useState([]); const handleAdd = (bird, quant) => { setBirdcage((prevCage) => { const birdInCage = prevCage.find((b) => b.id === bird.id); if (birdInCage) { return prevCage.map((b) => b.id === bird.id ? { ...b, quantity: b.quantity + quant } : b ); } else { return [...prevCage, { ...bird, quantity: quant }]; } }); }; ``` --- ```handleAdd``` is passed as a prop to ```<BirdCard/>``` --- ## Code Snippet- Cameo ``` javascript useEffect(() => { const storedCage = JSON.parse(window.localStorage.getItem("birdcage")); setBirdcage(storedCage ? storedCage : []); }, []); useEffect(() => { window.localStorage.setItem("birdcage", JSON.stringify(birdcage)); }, [birdcage]); useEffect(() => { setTotalBirdCount(() => { return birdcage.reduce((total, bird) => { return total + bird.quantity; }, 0); }); }, [birdcage]); ``` --- ## Code Snippet- Taha ```javascript const [selectedHabitat, setSelectedHabitat] = useState(null); const allHabitats = allBirdsData .flatMap((bird) => bird.habitat.split(", ")); const uniqueHabitats = [...new Set(allHabitats)] .filter((habitat) => habitat !== "forest, grassland, wetland"); ``` --- ## KSBs - K3 The roles and responsibilities of the project life-cycle within your organisation, and your role - S2 Develop effective user interfaces - S5 Conduct a range of test types - B4 Works collaboratively with a wide range of people in different roles, internally and externally, with a positive attitude to inclusion & diversity --- ## Demo
{"description":"\\","title":"","contributors":"[{\"id\":\"45bc2493-621a-4f6f-a959-1fc6b992282a\",\"add\":619,\"del\":230},{\"id\":\"5a3f4bdd-9e0a-4a00-b0eb-3ee951877df7\",\"add\":810,\"del\":202},{\"id\":\"fabff5d3-4757-44f9-9d3c-6ea0d5d4251f\",\"add\":1233,\"del\":5},{\"id\":\"e4684b11-975d-4d26-a460-4cea3ac180e8\",\"add\":552,\"del\":0}]"}
    105 views
   Owned this note