Levererade fullt stöd för Progressive Web App — installerbar och med offlinestöd — med körtidscachning i Workbox via next‑pwa.
Arbetet utfört: 2025
installerbar, och läsbar till sjöss utan täckning
Situation. Många av plattformens användare är till sjöss. Sjöfolk och fältpersonal på mobilen, ofta offline eller hängande på en dålig uppkoppling — inte folk som sitter vid ett skrivbord med pålitligt kontors‑wifi. Att bygga som om alla hade ett snabbt och konstant nätverk hade i det tysta stängt ute en stor del av den faktiska publiken.
Uppgift. Appen behövde gå att installera som en nativ app och fortfarande gå att använda när nätet försvinner.
Handling. Den levereras som en fullfjädrad Progressive Web App. Den installeras på hemskärmen med ordentliga ikoner i de olika storlekarna, en startskärm och temafärger, så att den ser ut och startar som en app och inte som ett bokmärke. Service workern sätts upp via pluginet next‑pwa, och Workbox cachar vid körning med CacheFirst för det som inte ändras per anrop — typsnitt, bilder, ljud, video, CDN‑resurser — tillsammans med rimliga HTTP‑huvuden för cachning. Eftersom service workers egentligen bara fungerar som de ska över HTTPS validerades beteendet offline och vid installation genom testning över HTTPS på riktiga enheter i stället för att det bara antogs fungera.
Resultat. Användarna kan installera appen och fortsätta använda den offline, och upprepade laddningar kommer snabbt tillbaka från cachen i stället för över nätet. Plattformen beter sig som en nativ app på den hårdvara som användarna faktiskt bär med sig, vilket för den här publiken inte är något som bara är trevligt att ha — det är skillnaden mellan att appen går att använda till sjöss och att den inte gör det.
Se tillbaka på Byggde frontenden i Next.js 16 med medvetna SSR-, SSG- och CSR‑strategier och en återanvändbar fabrik för förhämtade serversidor som tar bort N+1‑kaskaden av hämtningar från varje inloggad sida som flyttas över till den. Läs vidare: Etablerade ett internationaliseringssystem för engelska och danska med 12 027 meddelanden per språkversion i 458 namnrymdsfiler, med ett ordförråd som lintern upprätthåller och en budget på 400 rader per fil. Eller ta en titt på hela portföljen.
En del av en längre historik — och den finns i sin helhet här.
Varje post är skriven på samma sätt: situationen, uppgiften, vad vi gjorde och vad som förändrades.