Die Storyblok-API — aber sie gehört dir.
Osstblok ist ein 1:1 kompatibles, selbst-gehostetes Headless-CMS, das Storybloks Wire-Format Byte für Byte spricht. Alle @storyblok/* SDKs laufen unverändert. Keine Story-Limits. Keine User-Gebühren. Keine MAU-Grenze.
Was Storyblok hinter Paywalls versteckt — bei uns weg.
Storybloks Preismodell deckelt Stories, User, Traffic, Sprachen und Datenregionen. Beim Selbst-Hosting fallen all diese Grenzen weg.
Keine Story-Limits
1.000 oder 1.000.000 Stories pro Space — dein Postgres ist die einzige Grenze.
Keine User-Gebühren
Lad das ganze Team ein — Devs, Redaktion, Übersetzer. Preis pro User gibt es nicht.
Keine MAU-Grenze
Serve zehn Leser oder zehn Millionen. CDN-Traffic ist deine Infra-Rechnung, keine Pro-Visit-Steuer.
Deine Daten, deine Region
Keine getrennten EU-/US-Tarife. Die Daten liegen genau dort, wo der Server läuft — und sonst nirgends.
Fixier die Version, die du willst
Du bestimmst den Deploy. Upgrade, wenn du bereit bist, bleib auf einem getesteten Build, wenn nicht — die Storyblok-SDKs laufen so oder so.
Alle Sprachen, immer
i18n, Datasource-Dimensionen und Übersetzungs-Workflows — immer inklusive. Weil es keine Tiers gibt.
Gebaut für Teams, die liefern.
Ein langweiliger, selbst-gehosteter Stack mit genau den Features, die du ab Tag eins brauchst — ohne Sales-Gespräch.
1:1 kompatibel
CDN v2, Management-API, Bridge-Protokoll, Asset-Pipeline, Datasources, i18n, Scheduled Publish — alles Byte für Byte. STORYBLOK_API umschalten, fertig.
Langweiliger Stack, eine Compose-Datei
Bun + Hono für die API, Nuxt 4 fürs Admin, Postgres + Drizzle, Minio/S3 für Assets, optional Redis. Läuft auf einem 2-GB-VPS.
Auth, die zu deiner Org passt
Standardmässig Email + Passwort. Eine Env-Variable (OIDC_ISSUER_URL) schaltet den gesamten Login auf euer SSO um. Personal-Access-Tokens, rollenbasierte Space-Permissions, append-only Audit-Log.
Schnell by default
Bun-Runtime, SQL-nahe Drizzle-Queries, optionaler Redis-CDN-Cache, /m/ On-the-fly-Bildtransformationen direkt aus dem Storage-Service.
Migration an einem Nachmittag
POST /v1/spaces/:id/import/storyblok zieht einen kompletten Storyblok-Space — Components, Stories, Datasources, Assets — nach Osstblok. Live in Stunden statt Wochen.
MCP-nativ für KI-Agenten
Jeder Space hat einen Streamable-HTTP-MCP-Endpoint. Claude und andere Agenten lesen, schreiben und verwalten Content — mit Token-Rollen.
Endpoint austauschen. Fertig.
Osstblok starten, das offizielle Storyblok-JS-SDK auf deine Instanz zeigen lassen, Stories lesen. Das Response-Shape ist identisch — weil es dasselbe Shape ist.
import { storyblokInit, apiPlugin } from '@storyblok/js'
const { storyblokApi } = storyblokInit({
accessToken: process.env.OSSTBLOK_TOKEN!,
apiOptions: { endpoint: 'https://your-osstblok.example/api/v2' },
use: [apiPlugin],
})
const { data } = await storyblokApi!.get('cdn/stories/home', { version: 'published' })
console.log(data.story.content)