Storyblok x enhancely: AI ready in 5 minutes

With enhancely, you get structured data on your Storyblok website automatically – no manual schema markup, no headaches.

How It Works

The Enhancely plugin for Nuxt.js does exactly one thing: it fetches the right JSON-LD for each page and injects it into the <head>. Done.

    ┌─────────┐      ┌──────────┐      ┌───────────────┐      ┌─────────────┐
│ Browser │ ───▶ │ Nuxt App │ ───▶ │ Enhancely API │ ───▶ │ JSON-LD in  │
└─────────┘      └──────────┘      └───────────────┘      │   <head>    │
                       ▲                                   └─────────────┘
                       │
              ┌────────┴────────┐
              │    Storyblok    │
              │     Webhook     │
              │ (invalidates    │
              │     cache)      │
              └─────────────────┘
  

On page load, the plugin sends the current URL to the Enhancely API. It returns the ready-made schema, which gets added as <script type="application/ld+json"> to your HTML. Your visitors won't notice a thing, Google will love it.

Installation

    npm install @enhancely/nuxt-plugin
  

In your nuxt.config.ts:

    export default defineNuxtConfig({
  modules: ['@enhancely/nuxt-plugin'],
  enhancely: {
    apiKey: process.env.ENHANCELY_API_KEY
  }
})
  

That's it. Seriously.

Caching Included

The plugin caches automatically. Choose between Memory, File, or Redis – whatever fits your setup. When content changes, it checks via ETag whether an update is needed and only fetches new data when necessary.

Storyblok Webhook for Real-Time Updates

The real trick with headless CMS: when you hit "Publish" in Storyblok, a webhook can invalidate the cache instantly. That way, the new schema is live on the next page request.

For production, we recommend File cache (single host) or Redis (multi-instance). Memory cache works but won't sync across instances in serverless deployments.

Learn More

Full documentation with all configuration options at docs.enhancely.ai.

Get examples and blueprints

GitHub