Teknologiene bak nettbutikken
enil.no benytter seg av en del nyere teknologiske løsninger som ikke ser ut til å være så veldig utbredt blant andre nettbutikker. Under er en kort beskrivelse av noen av dem, og hvorfor vi velger å ta dem i bruk.
Advarsel: Dette er et innlegg for nerdene. Det inneholder en del ord og uttrykk som muligens ikke sier deg noe som helst, dersom du ikke har VS Code som et av arbeidsverktøyene dine ;-)
Single Page Application
Både Facebook, Gmail, Twitter så vel som så og si alt annet av nyere webapplikasjoner fra Silicon Valley og andre steder, er laget som en Single Page App (SPA). Allikevel er denne teknologien sjeldent brukt blant nettbutikker. Vi vet ikke hvorfor, for fordelen med en SPA i forhold til brukeropplevelse er enorm.
Med en SPA blir noen ganger første sidevisning litt tregere, mens alle påfølgende sidevisininger blir langt raskere. Bakgrunnen for dette er at du i en SPA ved første sidevisning også laster ned kode som gjør det mulig å vise påfølgende sider, uten å laste hele nettsiden på nytt. For å vise påfølgende sider, henter man da bare akkurat de dataene man trenger fra webserveren, noe som naturligvis går langt fortere.
Hvis du ønsker å se hastighetsforbedringene du kan oppnå med denne teknikken, kan du f.eks. teste søkefunksjonen på enil.no.
Progressive Web Application
Dette er også en teknologi som er mye brukt i nyere webapplikasjoner, men som vi ikke kan se er tatt i bruk av nettbutikker i særlig grad. Som du kan se i forrige blogg-innlegg, scorer enil.no 100 av 100 i Lighthouse-testen for denne teknologien.
I motsetning til en vanlig nettside som bare fungerer når man har nettilgang, fungerer en Progressive Web Application (PWA) både når man er offline og online. Når en PWA er offline, benytter den seg av data som er mellomlagret på enheten for å vise nettsidene. Når den er online igjen, oppdaterer den dataene til nyeste versjon fra webserveren. Fordelene er en bedret brukeropplevelse ved ustabilt nett, samt generell hastighetsforbedring.
For enil.no sin del betyr dette at du kan fortsette å bruke nettsiden når du er offline, så lenge du holder deg på de sidene hvor du har alle de nødvendige dataene mellomlagret på enheten din. Du vil selvfølgelig ikke kunne gjennomføre kjøp mens du er offline.
Isomorphic Web Application
En bekymring i forhold til det å ta i bruk Single Page App-teknologi for nettbutikker, kan være at søkeroboter ikke alltid er så gode til å indeksere innholdet på nettsider som bruker denne teknologien. For nettbutikker er det kritisk å bli godt indeksert av søkeroboter, for å komme høyt opp i søkeresultatene.
Løsningen er å lage en Isomorphic Web Application - dvs. en applikasjon som kan generere den komplette nettsiden på webserveren ved første sidevisning, og deretter fungere som en Single Page App ved påfølgende sidevisninger. På den måten får alltid søkereobotene en helt vanlig nettside som de lett kan indeksere, og brukerne får alle fordelene ved en Single Page App.
Uten å gå i detaljer på hvilken teknologi-stack som enil.no bruker, kan man enkelt se at vi bruker denne teknologien på en eller annen måte.
Websockets
Mens tradisjonelle webapplikasjoner fungerer sånn at nettleseren initierer all kommunikasjon mellom klienten og webserveren, åpner Websockets-teknologi for full toveis kommunikasjon mellom klient og server, sånn at webserveren også kan initiere kommunikasjon med nettleseren. Dette åpner for muligheter som live chat, live prisoppdateringer og en rekke andre ting.
Mange nettbutikker har et chat system, men da som en implementert tredjepartsløsning. enil.no har alle disse tingene integrert i selve nettbutikkløsningen.
Alle teknologiene over, tror vi at vi er ganske alene blant nettbutikker om å ha tatt i bruk. Vi vet i alle fall ikke om noen andre norske nettbutikker som benytter seg av noe av dette.
Dersom du vet om noen som benytter seg av noen av disse teknologiene, så send oss veldig gjerne en e‑post.