@@ -15,6 +15,16 @@ Andre løsninger finnes også, men dette er det jeg brukte for å se appen.
Denne appen er ment til å være en relativ lik versjon av nettleser versjonen av prosjekt 3 når man bruker en mobil horisontalt. Begge deler mange likheter i design delen.
## Teknologi - GraphQL, Apollo, Recoil, global tilstand og React native funksjoner
Jeg lagde appen ved å bruke EXPO CLI, siden dette var et krav.
Jeg brukte mye av det samme teknologien fra frontend i prosjekt 3 inkludert (graphql, apollo, recoil, global state), ettersom vi fant ut at det var en bra løsning fra forrige prosjekt.
Jeg fortsatt å bruke apollo for å kommunisere med graphQL, og recoil for å gjøre det enklere å bruke hooks i filene.
Utfordringen var å adaptere meg fra reactjs til react native.
I prosjekt 3 da vi brukte reactjs lagde vi søke og filtrerings elementene med Material UI. I react native måtte jeg da droppe dette siden det ikke er lagd for react native. Isteden brukte jeg SelectDropdown og TextInput for å visualisere det. I prosjekt 3 brukte vi et react-icons/fa biblioteket, men siden dette ikke finnes for react native så valgte jeg å fokusere på selve siden, siden det biblioteket ble brukt til å legge til en "to-the-top" knapp, som ikke var så viktig å ha med.
## Design
Som sagt ville jeg lage et nokså likt design. Jeg valgte å bruke SafeAreView i App.tsx, sånn at alt som er på applikasjonen ikke kan gå ut av skjermen. Dette løser også problemet med at hvis man prøver å dra seg lenger over skjermen enn ment så vil man ikke se en hvit bakgrunn. Når det kom til pokemon bildene valgte jeg å bruke resizeMode: 'containt', sånn at bildene ikke gikk ut av posisjon sånn at bildet ble kuttet.
Siden apple og android har helt forskjellige standarder når det kommer til fonts, valgte jeg å gjøre det enkelt å bruke standard font som funker for begge.