Bakdel đ§âđł â Bedre oppskrifter pĂ„ internett.
Noe av det beste med programmering er at man kan lĂžse hverdagslige problemer helt selv. Med det nyeste hobbyprosjektet mitt gjĂžr jeg nettopp det. MĂžt Bakdel.no!

Problemet
De siste Ärene har jeg begynt Ä bake brÞd og annen gjÊrbakst hjemme. Jeg har noen oppskrifter som jeg har brukt lenge, og jeg finner ogsÄ oppskrifter pÄ nettet nÄr jeg vil bake en annen brÞdtype eller andre ting.
Det finnes tusenvis av kilder til oppskrifter pĂ„ nettet, og det er derfor sjelden jeg finner oppskrifter pĂ„ samme sted. Mange av sidene er helt âokâ Ă„ bruke, men jeg syns allikevel at det ofte er mer fokus pĂ„ personen som publiserer oppskriften, heller enn meg som skal bake. Oppskriftene er fulle av livshistoriene til bloggerene som skriver de, har massevis av reklame, eller affiliate-lenker til ting jeg kan kjĂžpe. Og noen av stedene har ogsĂ„ brukt en slags âbait-and-switchâ taktikk hvor de har lagt oppskriftene bak betalingsmur etterhvert.
Selv om oppskriftene ofte er gode, syns jeg ogsÄ det er vanskelig Ä bruke de. Jeg mÄ konstant scrolle mellom ingredienslista og oppskriftsteksten nÄr jeg er pÄ mobil, og oppskriftsteksten er ofte fylt av mye informasjon jeg ikke trenger.
Men det siste problemet, som er hovedgrunnen til at jeg har laget Bakdel, er skalering. NÄr jeg baker brÞd vil jeg bake tre brÞd om gangen, siden det er det jeg har plass til i ovnen. Oppskriftene jeg finner er ofte for ett eller to brÞd om gangen, og da mÄ jeg skalere selv. SÄ nÄr jeg lagde meg et eget Excel-ark bare for Ä bake, da tenkte jeg at det mÄ vÊre mulig Ä gjÞre dette bedre..

Hvordan kan det bli bedre?
Det jeg Ăžnsket meg, var en plass hvor jeg kunne:
- Lagre oppskriftene jeg liker i et format som er lettlest og oversiktlig, uten reklame eller annen unĂždvendig informasjon.
- Slippe Ă„ scrolle mellom ingredienslista og oppskriftsteksten underveis.
- Skalere oppskriftene slik at jeg kan bake tre brÞd istedenfor to, eller lage vafler selv om jeg bare har to egg igjen i kjÞleskapet pÄ en sÞndag.
Ideen
I Bekk Trondheim har vi hatt noen workshop-kvelder i lĂžpet av hĂžsten hvor vi har lĂŠrt oss Ă„ bruke Sanity. Sanity er et hodelĂžst CMS som lar meg definere innhold i form av âdokumenterâ eller âobjekterâ. I motsetning til et tradisjonelt CMS er ikke innholdet i et hodelĂžst CMS bundet til noe presentasjonslag, men er nĂŠrmere beslektet en tradisjonell SQL-database eller andre mer lavnivĂ„ abstraksjoner for innhold.

Det som skiller Sanity fra andre hodelĂžse CMS-lĂžsninger, er muligheten til Ă„ skreddersy redaktĂžropplevelsen. NĂ„r man setter opp et prosjekt er man selv ansvarlig for Ă„ sette opp âSanity Studioâ, som er brukergrensesnittet for Ă„ redigere innholdet. Dette gjĂžr at man relativt enkelt kan skreddersy en redaktĂžropplevelse til innholdet som produseres.
NÄr jeg ble litt kjent med hvordan man setter opp Sanity, fikk jeg en idé: Hva om jeg kan modellere oppskrifter og ingredienser som innhold i Sanity, og referere til ingredienser inne i en oppskriftstekst? PÄ den mÄten kunne jeg sette opp en innholdsmodell som gjorde at jeg lett kunne legge inn oppskrifter, og referere til ingrediensene inne i oppskriftsteksten.

Med litt mer logikk kunne jeg ogsÄ skalere ingrediensene underveis, slik at ferdig skalerte ingredienser kunne vises inne i teksten. NÄr jeg viste en liten demo frem til noen kolleager fikk jeg ogsÄ tips om at det kunne vÊrt fint Ä sjekke av ingrediensene underveis, og det gikk ogsÄ ganske raskt Ä legge til. Med det var grunnproduktet pÄ plass, og mesteparten av tiden etter det har gÄtt med til finpuss.


Andre teknologivalg
NÄr jeg koder pÄ hobbybasis prÞver jeg Ä ha en god blanding av teknologi jeg kjenner godt, samtidig som jeg prÞver Ä bruke noe nytt. Da kan jeg vÊre produktiv med de teknologiene jeg kjenner fra fÞr, samtidig som jeg kan fÄ lurt inn litt ny kunnskap. Kjente teknologier og produktivitet hjelper ogsÄ for at jeg faktisk skal beholde motivasjonen helt til jeg har et brukbart produkt.
Bakdel bestÄr av en Next.js-app som bÄde inneholder nettsiden og Sanity-studioet. Styling og UI-komponenter bruker Tailwind og Shadcn for Ä gjÞre det raskest mulig Ä komme i gang. Pluss at jeg ikke hadde jobbet med noen av disse fÞr, sÄ det var en fin mulighet til Ä teste litt ny teknologi. Jeg fikk ogsÄ litt drahjelp av Vercel sin v0-plattform for Ä komme raskt opp i fart.
Ellers kjĂžrer appen hos Vercel, med DNS og proxy hos Cloudflare. Alle disse teknologivalgene bidro til at det tok veldig kort tid fĂžr jeg var i produksjon, og fĂžrste versjon av appen var ute etter bare en ukes arbeid.
Veien videre đŁïž
Etter omtrent en mĂ„neds arbeid har jeg et produkt jeg er relativt fornĂžyd med, og som jeg bruker flere ganger i uka nĂ„r jeg skal bake. Ingrediensene vises inne i teksten selv om oppskriften er skalert, og man kan skalere oppskriftene basert pĂ„ enkeltingredienser. I tillegg er det lite unĂždvendig informasjon, og ingen reklame. đ
Selv om jeg ikke har noen planer om Ä begynne Ä konkurrere med Matprat, sÄ er det fint Ä iallefall ha én plass jeg trenger Ä gÄ til nÄr jeg skal bake, og hvor det er lett Ä legge inn oppskriftene jeg liker. Og hvis noen andre ogsÄ kan fÄ nytte av det, er det ogsÄ en fin bonus.
Jeg har planer om Ä prÞve Ä fÄ inn enda mer skaleringslogikk fremover, blant annet mulighet til Ä endre pÄ enheter i oppskriften som Ä bytte fra teskje til spiseskje nÄr man skalerer opp en oppskrift, eller la brukerene bytte fra desiliter til gram selv.
Hvis du har et forslag til en oppskrift som mangler, eller kanskje du lurer pÄ noe annet? Ta gjerne kontakt med tilbakemeldinger!
Du finner lÞsningen pÄ bakdel.no.
đ
Del kunnskapen
Har du en kollega som ogsÄ hadde dratt nytte av denne artikkelen?
Skrevet av
Relevant innhold
Her finner du innhold i samme gata om du vil lĂŠre mer.
Mer fra Fag i Bekk
NÄ er du ved veis ende. GÄ til forsiden hvis du vil ha mer faglig pÄfyll.
Til forsiden