Use Storyblok’s amazing headless CMS in way that feels familiar to Laravel developers
This package allows you to use fantastic Storyblok headless CMS with the amazing Laravel PHP framework. It’s designed to try and feel natural to Laravel developers and part of the ecosystem whilst also converting Storyblok’s API JSON responses into something powerful with minimal effort.
- Pages from Storyblok mapped to PHP Pages classes giving access to the nested content (Blocks) and meta data for SEO, OpenGraph and more.
- Each Storyblok component is automatically transformed into a PHP class using a simple naming convention - just match your class and component names.
- All fields in your components are converted to a Field PHP class allowing you to manipulate their data. The package automatically detects common types like rich text fields, assets and markdown.
- Asset fields are converted to Assets classes allowing you to manipulate them as required.
- Blocks and fields know where they sit in relation to their ancestors and CSS classes can be created to help your styling.
- The structure of the JSON data is preserved but super powered making it simple to loop over in your views.
- It’s simple to link to the Storyblok visual composer by including one view and calling a method for each block in your Blade.
- Request ‘Folders’ of content such as a list of articles or a team of people.
- Feels like Laravel - use date casting and accessors exactly as you would with models.
- Richer Typography with PHP Typography baked in.
- Live preview of text changes in the visual editor! Live view
- Image transformations and picture element generation
- More transformations of content
- Better support for more components types
- Cache expensive transformations
- And more…
View it here
Feel free to help out! 😀
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Credits and thanks
The MIT License (MIT). Please see License File for more information.
Laravel Package Boilerplate
This package was generated using the Laravel Package Boilerplate.