Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Laravel Storyblok

Laravel Storyblok Laravel Package

riclep/laravel-storyblok

Laravel Storyblok brings the Storyblok headless CMS into Laravel with an Eloquent-style model layer, relationships, link and image resolvers, caching, and Blade rendering for content blocks, so teams can build flexible, editor-friendly websites quickly.

View on GitHub
Deep Wiki
Context7

Make Laravel and Storyblok work together beautifully.

Frequently asked questions about Laravel Storyblok
How do I install laravel-storyblok in a Laravel application?
Install it with Composer using composer require riclep/laravel-storyblok, then publish the package config. Set your Storyblok API token and region (EU, US, or AP) as environment variables, and optionally wire up a preview or draft token for editor previews. Laravel package auto-discovery registers the service provider and facade, so setup is mostly configuration rather than code.
Which Laravel and PHP versions does riclep/laravel-storyblok support?
The package is positioned for Laravel 10 through 12 on PHP 8.2 and newer, which is the stack the technical evaluation validated. Always confirm the exact constraints in the package composer.json before upgrading, since the 3.x line is young and requirements can shift between minor releases. If you are on an older Laravel version, check tagged releases or stay on the 2.x line.
How does laravel-storyblok give Storyblok content an Eloquent-style model layer?
The package wraps Storyblok's Content Delivery API in story objects that behave like Eloquent models, including relationships between content entries. It also ships link and image resolvers so Storyblok multilink fields and asset references become usable URLs and image data in your app. This lets you query and traverse CMS content with familiar Laravel patterns instead of hand-parsing API responses.
What changed in laravel-storyblok 3.0.3 and should I upgrade?
Version 3.0.3 is a single-line patch described only as Fixed resolving links, with no new API surface, deprecations, or config changes. The risk is that link resolution sits underneath navigation, breadcrumbs, canonicals, and sitemaps, so a small behavioural change can affect many rendered pages. Pin 3.0.3 explicitly, diff rendered output on a staging environment, and add link-integrity tests before rolling it out broadly.
How does caching work in laravel-storyblok?
The package provides caching for Storyblok content, but the caching strategy, TTLs, and invalidation model are decisions you own outside the package. A key question is whether resolved links are cached and whether that cache is cleared on publish via a Storyblok webhook or only expires on TTL. Plan for webhook-driven invalidation if editors expect near-instant updates.
Can I render Storyblok content blocks with Blade using laravel-storyblok?
Yes. Blade is the primary rendering target, and the package supports rendering content blocks as Blade components or directives, so editors can compose pages from Storyblok components. It does not force a frontend architecture, so you can also treat it as a data-access layer and render with Inertia, Vue, or Livewire. Start by mirroring one existing page type to validate the component mapping.
How should I handle link resolution and SEO with Storyblok in Laravel?
Storyblok multilink and uuid references are resolved into URLs that feed navigation menus, internal cross-links, breadcrumbs, canonical tags, and sitemaps. Broken links often fail silently, returning an empty href or falling back to a slug, so problems surface through SEO tooling weeks later rather than as exceptions. Add link-integrity assertions to your test suite and monitor crawl reports after any package upgrade.
Is laravel-storyblok safe to use in production?
It is a non-invasive Laravel integration that fits content-heavy marketing, documentation, and multi-locale corporate sites well. The dominant risk is maintainer concentration: it is a small, single-maintainer open source package with a young 3.x line and no documented second maintainer. Pin versions, read changelogs before upgrading, and keep an exit path to raw Storyblok API calls if maintenance stalls.
How do I test a Storyblok integration in Laravel without hitting the live API?
Because the package does not take over Laravel's HTTP client, you can use Http::fake and cache fakes to stub Storyblok Content Delivery API responses in tests. Mirror a representative page type and assert that resolved links, image URLs, and relationships match expected output. Include regression tests for link resolution specifically, since broken links fail quietly.
What are the alternatives to laravel-storyblok and when should I skip it?
If you only need to fetch a few Storyblok stories, raw API calls through Laravel's HTTP client may be simpler than adopting a package. laravel-storyblok is a poor fit for transactional workflows, tight per-request write paths, or content models that fight Storyblok's component schema. Alternatives include other headless CMS integrations or building your own thin client, but you would lose the Eloquent-style models, resolvers, and Blade block rendering.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core
nodisrupt/laravel-agent
sierratecnologia/media-manager