Skip to content

navikt/nav-enonicxp-frontend

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

08adfc1 · Mar 3, 2025
Jan 5, 2025
Feb 25, 2025
Oct 31, 2024
Feb 13, 2025
Mar 3, 2025
Oct 30, 2024
Nov 1, 2024
Oct 30, 2024
Oct 23, 2024
Mar 26, 2024
Oct 28, 2024
Nov 6, 2024
Nov 6, 2024
Feb 25, 2025
Feb 13, 2025
Feb 25, 2025
Feb 25, 2025

Repository files navigation

Nav.no EnonicXP frontend

React/Next.js frontend for åpne sider på nav.no. Benytter Enonic XP som headless CMS.

Dokumentasjon av caching

Lokal utvikling

Kjøres lokalt på http://localhost:3000.

Som default kreves en lokal instans av Enonic XP med nav-enonicxp installert. Alternativt kan en dev eller prod-instans av XP benyttes via nav-enonicxp-dev-proxy.

VS Code

Hvis lintingreglene i pakkene ikke plukkes opp av VS Code, sørg for å ha følgende innstillinger i .vscode/settings.json:

{
  "eslint.workingDirectories": ["./packages/nextjs", "./packages/shared", "./packages/server"]
}

Development mode:

Med lokal XP:

  • Start en XP sandbox (se nav-enonicxp readme for fremgangsmåte)
  • Kjør npm run dev

Via dev-proxy:

  • Kopier .env.development til .env.development.local.
  • Sett f.eks. XP_ORIGIN=https://nav-enonicxp-proxy.intern.dev.nav.no/dev1 (se dev-proxy readme for andre alternativer)
  • Kjør npm run dev-custom

Production mode:

Kjør npm run start-clean

Storybook

Kjør Storybook lokalt med npm run storybook

Andre lokale avhengigheter

Dekoratøren og revalidator-proxy kan kjøres lokalt med docker compose up. Du må først autentisere til GAR image registry'et:

gcloud auth login
gcloud auth configure-docker europe-north1-docker.pkg.dev

Se også https://cloud.google.com/artifact-registry/docs/docker/authentication#gcloud-helper

Deploy til test-miljø

Actions -> Velg workflow -> Run workflow -> Velg branch -> Run workflow

Prodsetting

  • Lag en PR til main, og merge inn etter godkjenning
  • Lag en release på main med versjon-bump, beskrivende tittel og oppsummering av endringene dine
  • Publiser release'en for å starte deploy til prod

Logger og metrikker

Kibana

Grafana

Failover

I tillegg til den ordinære instansen av appen på www.nav.no, deployes også daglig et statisk bygg av appen til www-failover.nav.no. Ved server-feil ved rendring av en side i den ordinære app-instansen, vil error-page'en forsøke å hente html for tilsvarende side fra failover-appen, og servere denne som en fallback.

Failover deployes ikke automatisk til dev-miljøer. For å bygge og deploye til et dev-miljø, gjør følgende:

  • Legg inn relevante secrets lokalt som spesifisert i kommentarer i .failover/build-dev-failover-image.sh
  • Kjør ./.failover/build-dev-failover-image.sh <dev1|dev2> <image-navn>
  • Vent på at imaget bygges (det tar normalt 15-20 min)
  • Kjør Github workflow'en deploy-failover.dev med dev-miljøet og image-navnet du valgte som input

Failover-appen kan ikke navigeres direkte, kun via den ordinære appen. For å teste en deployet failover-instans kan du f.eks. slå av nav.no-appen i XP og så slette frontend-cachen (helst ikke i prod :).

Henvendelser

Spørsmål knyttet til koden eller prosjektet kan rettes mot https://github.com/orgs/navikt/teams/personbruker

For Nav-ansatte

Interne henvendelser kan sendes via Slack i kanalen #team-personbruker