For utviklere
Slik holdes dokumentasjonen oppdatert
Docs-as-code: hvor sidene bor, hvordan de bygges, hvorfor hver PR må røre dem, og hvordan 'sist oppdatert' beregnes.
Hvor sidene bor
apps/docs/content/<språk>/<seksjon>/<side>.md, ett tre per språk: sv (standard og komplett), en, no, da, fi. Samme mapper og filnavn i alle språk. En side som mangler på et språk, vises fra sv med en merknad "ikke oversatt ennå", så en lenke er aldri brutt og et nytt språk kan vokse side for side. sections.json per språk gir seksjonenes navn.
Frontmatter:
---
title: "Sidens tittel"
description: "Én setning som vises i søk og kort."
order: 2
updated: 2026-09-05
keywords: [ord, som, hjelper, søket]
---
Seksjonene og rekkefølgen deres finnes i apps/docs/content/<språk>/sections.json. En ny mappe uten oppføring der havner sist i navigasjonen med mappenavnet som tittel.
Språk i adressen
Svensk ligger på roten (/frakt/sendify), øvrige språk har prefiks (/en/frakt/sendify, /no/...). Språkvelgeren i toppteksten bytter språk på samme side, og hver side deklarerer hreflang for alle språk, slik at søkemotorer viser riktig versjon.
Bygget
apps/docs/scripts/build-content.mjs kjøres før next build og genererer navigasjon, HTML per side, innholdsfortegnelse, søkeindeks og endringslogg. Markdown renderes med marked; tabeller, kodeblokker og sitater (brukt som merknader) støttes.
Sist oppdatert
Per side: siste git-commit som har rørt filen. Deploy-workflowen henter hele historikken, så datoen er nøyaktig. I miljøer med grunn historikk (Vercel Preview) brukes updated: i frontmatter, deretter byggetiden. Forsiden og bunnteksten viser siste oppdatering i hele dokumentasjonen.
Endringslogg
/changelog bygges av merge-commits til main: PR-nummer, tittel (med type som Nytt, Rettet) og område fra commit-prefikset.
Regelen: ingen produktendring uten docs
Workflowen Docs required stopper en pull request som endrer admin, butikk, designer, plattformkomponenter, migrasjoner eller edge functions uten å røre apps/docs/content/**. Den foreslår hvilke sider som trolig berøres. Etiketten docs-not-needed på PR-en, eller [no-docs] i tittelen, slipper gjennom rene refaktoreringer.
Publisering
Docs deploy kjører ved hver push til main: bygger innholdet med full git-historikk og publiserer til Vercel-prosjektet bunstack-docs (docs.bunstack.co). Mangler hemmelighetene VERCEL_TOKEN og VERCEL_DOCS_PROJECT_ID, bygges nettstedet, men publiseres ikke, med en merknad i jobben.