Selvbetjeningsløsninger for Team Foreldrepenger sine ytelser - foreldrepenger, svangerskapspenger og engangsstønad.
Dette monorepoet bruker følgende verktøy:
- node (v22)
- pnpm - som npm, men mer plasseffektiv.
- turbo - for å kjøre tasks parrallelt i et monorepo.
- et personal access token for å installere alle dependencies
- Gå til https://github.com/settings/tokens og velg "Generate new token (classic)".
- Gi tokenet et navn og velg "read:packages" scopet.
- Velg en utløpsdato og trykk på "Generate token".
- Kopier tokenet ditt og lagre et trygt sted.
- På https://github.com/settings/tokens siden, velg "Configure SSO" for tokenet ditt og autoriser for navikt.
- Bruk tokenet ditt lokalt som
export PACKAGES_AUTH_TOKEN=<token her>
. Dette må du gjøre hver gang du åpner terminalen på nytt eller lagre det mer permanent på lokal maskin.
- Installer node hvis du ikke allerede har det.
- Installer pnpm:
npm install -g pnpm
. - I roten av repoet, kjør
pnpm install
. - Kjør
pnpm setup
. Følg instruksjonen i outputen - Installer turborepo med
pnpm install -g turbo
- Kjør
turbo build
- For å sjekke om alt fungerer, kjør testene med
turbo test
apps
-folderen inneholder alle selvbetjeningsappene. packages
inneholder moduler som er felles for flere av appene.
Vi har en utviklingsmetode vi kaller for "Vite mode". Den gjør at du kan bruke server som er deployet til dev som utgangspunkt. Fordelen er at du får brukt helt "ekte" dev data, men med frontend servert fra din localhost.
- cd til appen du ønsker å kjøre tester på, f.eks
cd apps/foreldrepengeoversikt
- Kjør
pnpm run dev-vite
. Nå har du lokal vite-server kjørende pålocalhost:8080/foreldrepenger/oversikt
- Gå til ingress i dev. f.eks https://foreldrepenger.intern.dev.nav.no/. Logg inn med en testbruker.
- Identifiser appens wonderwall port:
Sjekk i Docker hvilken port din app bruker. F.eks. kjører
wonderwall-foreldrepengeoversikt
vanligvis på port9100
. - Aktiver Vite-mode:
- Legg til
/vite-on
i slutten av URL-en du bruker i nettleseren (fra steg 3) - Dette setter en cookie kalt
use-local-vite-server
i nettleseren din - Cookien instruerer den deployede serveren til å sende deg en spesiell
index.html
- Denne HTML-filen laster JavaScript fra din lokale utviklingsserver (f.eks.
localhost:9100/foreldrepenger/oversikt
dersom dette er porten du identifiserer i steg 4) i stedet for de ferdig bygde filene på serveren - Du vil nå se endringer du gjør lokalt mens du bruker den deployede backend-en
- Legg til
- cd til ønsket app. f.eks
cd apps/svangerskapspengesoknad
- Kjør
pnpm run storybook
- Browser vil automatisk åpne på riktig localhost port
- cd til
server
og kjørpnpm build
- cd til appen du ønsker å jobbe med, f.eks
cd apps/foreldrepengeoversikt
- Kjør
pnpm run dev-api
- Kjør
pnpm run dev
Vi autogenerer typer fra backend sin openApi spec. For å synkronisere typene så kjører du:
./generate-api-types.sh
Du må ha verdikjeden kjørende i autotest.
For å kjøre tester for en app:
- cd til appen du ønsker å kjøre tester på, f.eks
cd apps/foreldrepengeoversikt
- Kjør
pnpm vitest
.
Spørsmål knyttet til koden eller prosjektet kan rettes mot [email protected].
Interne henvendelser kan sendes via Slack i kanalen #teamforeldrepenger.