Hopp til hovedinnhold

Livet er for kort til å stå og regne ut hvor mye alkohol man kan ta med seg fra tax free for hånd. Min hjemmesnekra kvotekalkulator lar meg maksimere alkoholkvoten uten å ta i bruk en eneste hjernecelle.

Skjermdump av kvotekalkulator.no

Hva er prosjektet?

kvotekalkulator.no er mitt alternativ til Tollvesenets offisielle kvoteapp. Det er en webapp som hjelper meg å maksimere alkoholkvoten når jeg handler på tax-free etter å ha vært i syden.

Hva inspirerte deg til å lage det?

Inspirasjonen bak prosjektet kom fra frustrasjonen jeg opplevde da jeg vraltet rundt på en tax-free, med tralla full av klirrende flasker, og mobilen i hånda med Tollvesenets kvoteapp. For hver ølflaske jeg slengte oppi tralla, trykte jeg +1 i appen for å se om jeg fortsatt var innafor grensa. Med skjelvende hender veltet jeg en sekspakning med øl oppi tralla, og trykte +6 i appen. Med det var jeg over grensa. Appen viste meg ikke hvor mye jeg var over, så jeg måtte fjerne en og en øl for å se nøyaktig hvor grensa var. Det ble fort slitsomt.

Et annet problem var at de underliggende reglende ikke var gjort lett synlig. I praksis er det tre forskjellige alkoholkvoter:

  1. En egen ølkvote på 2 liter
  2. En spritkvote på 1 liter
  3. En "annet"-kvote på 1,5 liter

Man kan bytte vekk spritkvoten sin sånn at man får 1,5 liter mer av "annet", for totalt 3 liter. Annet-kvoten kan være all drikke utenom sprit. Kvoteappen forteller deg bare om du er over en av kvotene. Det kan bety at du har én øl for mye, men at du fortsatt kanskje kan kjøpe en liter Vikingfjord med blåbærsmak. Som en sunnmøring med et sunt forhold til alkohol, ville jeg lett kunne maksimere kvoten hver gang, uten å behøve å tenke.

Hva er tech-stacken?

Jeg bygde første versjon av tjenesten i Preact med Typescript. Den kjører på en billig VPS (Virtual Private Server) fra Hetzner.

Appen var hovedsaklig lagd for meg selv, men jeg la merke til at jeg begynte å få litt trafikk fra Google. Den lå i snitt på åttende plass for søkeordet "kvotekalkulator", rett under noen andre sitt hobbyprosjekt som prøvde å løse det samme problemet. Konkurranseinstinktet slo inn, og jeg skrev om hele appen i Svelte og Sveltekit. Det førte til en mindre pakkestørrelse som gjorde at appen lastet inn fortere, og det statiske innholdet kunne dra nytte av server side rendering. Det var nok til å hoppe opp til andre plass på Google, og den er nå kun utkonkurrert av Tollvesenet.no.

Så den endelige stacken er da altså Svelte+kit, skrevet i Typescript, med ingen ytterligere avhengigheter.

Hva er en ting du har lært?

Dette prosjektet har lært meg mer om kvoteregler enn jeg noensinne trengte å vite.

Jeg har også lært å bli mer glad i Svelte enn det jeg allerede var. Hver gang jeg byttet ut en

const [state, setState] = useState(0)

med

let state = 0

kjente jeg på en indre ro, og en følelse av at livet ikke trenger å være så innviklet allikevel.

Relevante lenker anbefalt av forfatteren

Liker du innlegget?

Del gjerne med kollegaer og venner