Birkly er det CMS, som alle de sites, vi bygger, kører på – også dette. Som standard gemmes indholdet som JSON-filer, med en database som valgmulighed. Kernen kører på almindelig PHP-hosting uden afhængigheder, og enhver AI behandles som en bruger med sin egen rolle og sine egne rettigheder. I dag er det i alfa, og ved lanceringen bliver det gratis og open source.
- Kunde
- Vores eget produkt
- År
- Siden 2025
- Ydelser
- Birkly & pluginsWebudvikling
- Bygget med
- Birkly
- Hjemmeside
- Besøg siden ↗
Udgangspunktet
Enkel, fleksibel og fair
Birkly opstod af frustration. Intet af de CMS'er, vi prøvede, gav os den kombination, vi ledte efter: enkelt nok til at kunne forstås helt, fleksibelt nok til enhver slags hjemmeside og fair over for dem, der bygger og driver sites med det.
De fleste systemer kræver meget til gengæld for bekvemmeligheden: en databaseserver, en lang kæde af afhængigheder, der går i stykker ved næste opdatering, og plugins, som ingen vedligeholder længere. Hver af de dele gør tingene mere komplekse, og hver pakke, der hentes ind udefra, er en sikkerhedsrisiko og et led i en forsyningskæde, du ikke selv har styr på.
Derfor valgte vi et andet fundament: gennemprøvede, enkle webteknologier og ingen afhængigheder, når systemet kører. Ingen Composer, ingen npm, intet build-trin. Mindre kode at stole på, mindre der kan gå i stykker, og mindre at opdatere. En arkitektur, der skal kunne køre om ti år, på helt almindelig PHP-hosting.
Arkitektur
Indhold, du kan åbne i en teksteditor
Som standard gemmer Birkly hver collection, hvert indlæg og hver indstilling som JSON på disken. Et blogindlæg er en fil; kommentarerne til det er filer i en mappe ved siden af. Intet skal oprettes, migreres eller gendannes: En backup er en kopi af en mappe, og at flytte et site betyder at flytte den mappe. Projekter, der hellere vil bruge en database, kan slå en til i stedet.
Oven på lagringen ligger en struktureret indholdsmodel:
- Collections beskriver det, der gentager sig, som cases, produkter eller medarbejdere, med typede felter: tekst, markdown, billeder, gallerier, tags, relationer, kort og meget mere.
- Sub-collections rummer det, der hører til ét indlæg, som kapitlerne i denne case eller sektionerne på en side.
- Sprog ligger side om side i det samme indlæg, så en oversættelse aldrig glider over i en separat kopi.
Selve sitet kan ligge to steder. Skabeloner, styles og scripts kan hostes inde i Birkly, i en projektmappe, der kan forbindes til et Git-repository, så ændringer kan pushes, pulles og gennemgås som al anden kode. Eller sitet kan ligge et helt andet sted, på sin egen server eller i sin egen stak, og forbinde sig sikkert til Birkly via klientscriptet eller API'et.

Admin
Lavet til dem, der skriver
Redaktører ser aldrig JSON. De ser et roligt webadmin: collections i den ene side, indlæg i en liste og en formular bygget ud fra skemaet. En case beder om en titel, en intro og dens kapitler – og intet andet.
Det daglige arbejde er dækket uden plugins. Mediebiblioteket har mapper, alt-tekst og fokuspunkter, så et foto beskæres omkring motivet på enhver skærmstørrelse. Hver gemning bevares som en version, der kan sammenlignes og gendannes. Roller bestemmer, hvem der må udgive, og et valgfrit godkendelsestrin lader nogen tjekke en ændring, før den går live.
Vi brugte det meste af vores designtid her, og det meste af den på at fjerne ting. Et CMS bruges af folk, der hellere ville lave noget andet. Jo færre beslutninger det kræver af dem, jo bedre bliver hjemmesiden.

Skabeloner
Skabeloner, der læses som sætninger
Et Birkly-site er almindelig HTML med et lille skabelonsprog indeni. Løkker og opslag læses næsten som almindeligt engelsk: for each entry in 'cases', ordered by order eller from 'site elements' get entry 'logo'.
Siderne bliver renderet på serveren, så besøgende og søgemaskiner får færdig HTML, og et lille script i browseren holder formularer og levende indhold kørende. Der er intet tema-lag at kæmpe med og intet framework at lære. Kan du skrive HTML, kan du bygge et Birkly-site, og markuppen forbliver præcis, som du skrev den.
Det gør også Birkly velegnet til eksisterende designs. Denne hjemmeside startede som en række håndbyggede statiske sider; at flytte den over i Birkly betod at erstatte den faste tekst med skabelon-tags, ikke at bygge siderne om.
AI
Bygget til AI, med bremserne på
Birkly er designet til en tid, hvor en del af arbejdet på en hjemmeside udføres af AI, og du kan tage din egen med på mere end én måde. Tilføj en API-nøgle til OpenAI, Anthropic, Google, OpenRouter, en lokal model via Ollama eller et eget endpoint, og arbejd med den i Birklys egen AI-chat uden ekstra abonnement. Eller forbind via MCP og tag Birklys værktøjer med ind i de AI-chats, du allerede bruger, som Claude, ChatGPT eller Cursor, hvor assistenten kan læse indholdsmodellen, skrive indlæg, uploade medier og redigere skabeloner.
Uanset hvad er enhver AI en rigtig bruger i Birkly med sin egen rolle og sine egne rettigheder, så admin altid bestemmer præcis, hvad den må og ikke må. Dens handlinger kan også vente i en godkendelseskø, indtil et menneske har sagt god for dem. Assistenten får playbooks, der forklarer, hvordan Birkly fungerer, så den ikke behøver at gætte. Denne hjemmeside blev flyttet over på Birkly på den måde, ét godkendt skridt ad gangen.
Den samme tankegang peger også udad. En valgfri Agent Guide offentliggør en klar, struktureret beskrivelse af et site til AI-søgning og assistenter, og WebMCP kan tilbyde en besøgendes browseragent nogle få sikre handlinger, som at sende kontaktformularen, i stedet for at lade den skrabe siden.
Plugins
En lille kerne – og plugins, når du har brug for dem
Alt, hvad en typisk hjemmeside har brug for, ligger i kernen. Resten kommer fra Birkly Hub som plugins, du kun installerer, når du har brug for dem. Basispluginsene er udviklet af Birkly & Other Things:
- Commerce til salg af produkter, ydelser og abonnementer
- Events til bookinger og kalendere (på vej)
- User Management til medlemsområder, login og fællesskaber
- Automation til workflows og e-mails, der kører, når indhold ændres
Sammen med kernen dækker de næsten enhver slags webprojekt eller app, fra en portefølje eller en webshop til et bookingsite eller et medlemsfællesskab som Birkly Club. Plugins følger samme regel som kernen, uden afhængigheder under kørsel, og de beder eksplicit om deres rettigheder. At installere et plugin ændrer derfor aldrig i det stille, hvad resten af systemet kan.
Birkly er stadig i alfa, og early access åbner i bølger. Ved lanceringen bliver det gratis og open source, og dokumentationen beskriver systemet, som det leveres i dag, ikke som en køreplan.
Resultatet
Birkly driver denne hjemmeside, birkly.io og kekaba.com. Det er stadig tidligt, systemet er i alfa, men fundamentet er på plads: hurtigt at lære, kan hostes overalt, hvor PHP kører, og forståeligt helt ned til den sidste fil. Og fordi det bliver open source ved lanceringen, bliver ingen låst fast – heller ikke til os.


