- Når du sier til utviklere at du jobber med CMS, faser de fleste ut.
Det forteller utvikleren Espen Hovlandsdal. Han sitter på kjøkkenet til Sanity, i en gammel trikkestall på Grünerløkka i Oslo.
Før var det flere selskaper i lokalet; nå har Sanity skvist ut alle.
For Hovlandsdal er bare én av de rundt 20 som nå jobber fulltid med selskapets eneste produkt: Sanity. Et slags hodeløst CMS, en slags ferdiglaget backend, en slags database – i alle fall en løsning for innhold, i ordet videste forstand.
Nøyaktig hva Sanity er sliter de fortsatt litt med å formulere. Men det spiller kanskje ikke så voldsomt stor rolle.
For selv om utviklere kanskje faser ut når de hører om CMS-er, spisser mange ørene når de hører om Sanity.
Manglet hyllevare, lagde selv
Sanity starta, som så mye annet, for å fylle et hull. Da konsulentselskapet Bengler fortsatt var i live, fikk de nemlig i oppdrag å gjøre web-kommunikasjonen for den berømte arkitekten Rem Koolhaas.
- Det var et døvt oppdrag rent teknisk, men vi gjorde det for å møte fyren, smiler Bengler-eks, nå teknologisjef i Sanity, Simen Svale Skogsrud.
- Vi hadde ikke klart oss uten Unity
Bli med inn hos spillstudioet Krillbite.
Arkitektselskapet til Koolhaas produserte tonnevis av bøker, med innhold som Bengler mente også kunne egne seg på nett. De så altså en mulighet, og trodde løsningen var enkel: Kjøpe et ferdiglaget CMS, som lot arkitektene produsere innholdet én gang, og publisere det overalt.
- Men vi fant fort ut at ingenting var godt nok. Så vi lagde heller et CMS selv, forteller Skogsrud til kode24.
Etterhvert ble CMS-et brukt i flere prosjekter, for hyllevaren som Skogsrud trodde eksisterte, kom aldri.
- Det vi hadde laget viste seg å ikke være så selvfølgelig som vi trodde. Så vi bestemte oss for å lage det skikkelig, fortsetter CTO-en.
Etter flere år med utvikling, ga de ut Sanity kommersielt sent i 2017. Konsulentselskapet Bengler ble gjort om til produktselskapet Sanity. Og ifølge NPM laster rundt 7.500 utviklere ned CLI-en deres hver uke.
Hva er Sanity?
Sanity er altså et system for innhold,og kan dermed kalles et CMS. Og da Sanity ikke tilbyr noen løsning for å tegne ut innholdet, kan det også kalles et hodeløst CMS. Men nordmennene på Grünerløkka merker at begrepene ikke helt dekker behovene deres.
- Det er ofte enklere å forklare hva slags problemer Sanity løser: Alle har innhold, og alle trenger å gjøre noe med innholdet. Sanity gjør det veldig enkelt å organisere innholdet, og få det ut gjennom kraftige API-er som kan brukes til alt mulig, forklarer Knut Melvær, som er ansatt som «utviklerkompis».
Her er kode24 sitt eget forsøk på å kort forklare hva Sanity er:
- Når du installerer Sanity får du et React-prosjekt kalt Sanity Studio. Her kan du, om du vil, lage innholdet ditt. Felter du legger til og endrer i schemaet dukker umiddelbart opp i studioet, det gir deg løsninger for bildeopplasting, innhold oppdateres i sanntid og studioet kan enkelt deployes til en .sanity.studio-adresse.
- Dataene lagres i Sanitys database, og blir tilgjengelige via Sanitys API-er. Studioet, databasen og API-ene oppdateres automatisk etter innholdet og schemaet ditt, uten at du trenger å for eksempel skrive resolvers selv, slik som i GraphQL.
- Du henter fram dataen din gjennom Sanitys egne spørrespråk, kalt GROQ (Graph Oriented Query Language), og får dataen tilbake som JSON. Denne kan du selvfølgelig gjøre hva du vil med.
Alt i alt: Et slags rammeverk for, eller kanskje mer en fiks ferdig, backend. Som er kodet med blant annet PostgreSQL, Elasticsearch og Go, og kjører i Google Cloud, uten at du trenger å tenke så mye på akkurat det.
Menyer, bøker, TV-guider
- Du slipper å lage API-ene dine selv, du slipper å ligge våken om natta og lure på hvordan det går, du slipper å lure på hvordan du skal skalere, og det er nesten raskere enn å skrive en egen JSON-fil når du skal hacke sammen noe, ramser Melvær opp.
NAV bruker det for å hjelpe nordmenn til å finne riktig skjema. RiksTV bruker det til markedsføring og TV-guider. Restauranten Lofthus Samvirkelag har gitt ut en pizzabok, laget med Sanity koblet opp mot InDesign.
Schibsted brukte det for en black friday-kampanje. En diger restaurantkjede skal bruke det til menyene sine. Sanity selv har koblet foosball-bord og ølbrygging til egen løsning.
Noen bruker det for API-ene og spørrespråket. Andre for det hodeløse aspektet, med data enkelt ut i alle kanaler. Eller for å sy sammen informasjon fra flere forskjellige kilder.
- Den enkleste måten å se verdien for en utvikler, er om man har opplevd å bli tvunget til å lage et CMS med et redigering-brukergrensesnitt. Man tror først det er veldig enkelt, men så viser det seg å involvere tusen ting, sier Hovlandsdal til kode24.
Reiser til Silicon Valley
- Vi trodde vi skulle levere løsninger til personlige blogger i en evighet, før vi fikk bygd opp tilliten. Men vi fikk overraskende fort store aktører på tråden, smiler CTO-en Skogsrud.
Som de fleste andre oppstarter bare drømmer om, tar de nå bokstavelig talt turen til Silicon Valley. CEO Magnus Hillestad og CPO Even Westvang flyr snart avgårde for åpne Sanitys nye kontorer i San Fransisco – både for å sikre seg nye kunder og få enda mer samarbeid med andre teknologileverandører.
- Vi merker hvor viktig det er å ha et nettverk der. Samarbeidet vårt med Gatsby starta vel fordi du kjente Kyle Mathews fra GitHub, sier Skogsrud, og peker på Hovlandsdal.
- Vi hadde et møte med en av de største investorene i Silicon Valley, og han bare «Fader, alle her snakker jo om dere!». Det er nok ikke helt sant, men det er mange viktige personer nå som vet hvem vi er. Jeg synes det er helt sykt hvordan vi nå sitter med de største selskapene i hele verden, det er veldig stas, smiler Skogsrud.
Hva med konkurrentene?
Det finnes andre hodeløse CMS-er der ute. Contentful, for eksempel, og headlessCMS.org ramser opp en hel haug andre.
Men Sanity selv mener at de praktisk talt ikke har noen reelle konkurrenter.
Contentful skal ha mistet fokuset på utvikleren, og bruker man en «enkel» database som mongoDB må man nødvendigvis kode en backend selv – som Sanity altså hevder at de kan gjøre for deg, med deres proprietære løsninger.
Og en av de største utfordringen det norske selskapet sitter igjen med, er altså nøtta å kommunisere hva Sanity egentlig er.
- Vi har ikke noe godt begrepsapparat for dette ennå, avslutter Skogsrud.
- Det blir som da jeg kjøpte min første datamaskin på 80-tallet; man visste ikke helt hva man skulle selge det som, så noen solgte det som en «skrivemaskin».
Derfor går blogg.no for Wordpress
Blogg.no blir en av verdens største WordPress-sider.