By episerver
Generate React components, content type definitions, and display templates for Optimizely CMS, while setting up live preview and configuring the JavaScript SDK for headless content delivery.
This skill should be used when the user asks to "create a React component for BlogPage", "generate the component", "build the display template component", "add preview attributes", "render rich text", "implement the Hero component", "create component for Article", or mentions creating React components for Optimizely content types or display templates.
This skill should be used when the user asks to "create a content type", "model a BlogPage", "define a display template", "create a contract", "set up SEO fields", "convert JSON schema to TypeScript", "make an Article type", "add a Hero component", "model a Card display template", or mentions content type modeling, display templates, or contracts for Optimizely CMS.
This skill should be used when the user asks to "set up live preview", "configure preview mode", "fix preview not working", "add click-to-edit", "troubleshoot preview", "preview is broken", "can't see preview in the editor", or mentions visual editing, live preview, or on-page editing for Optimizely CMS in React applications.
This skill should be used when the user asks to "set up Optimizely CMS SDK", "initialize the SDK from scratch", "configure the CMS client", "add content delivery", "integrate Optimizely CMS", "start a headless CMS project with Optimizely", "install the SDK", or mentions setting up the Optimizely CMS JavaScript SDK in a new project.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
The official JavaScript SDK and CLI from Optimizely CMS. Build headless applications with a code-first approach, full TypeScript support, intelligent code completion, and an intuitive developer experience.
A JavaScript/TypeScript library for fetching, rendering, and managing content from Optimizely CMS in your applications.
Key Capabilities:
A command-line tool that syncs your TypeScript content type definitions to Optimizely CMS, enabling code-first content modeling.
Key Capabilities:
A collection of Agent Skills that teach AI coding agents how to work with Optimizely CMS.
Key Capabilities:
Compatible with: Claude Code, Cursor, GitHub Copilot, and others
Learn more: See the packages/optimizely-cms-skills/ package
Framework Support: While the SDK is designed to be framework-agnostic, this version currently includes first-class support for React and Next.js. Support for additional frameworks is coming soon.
Before you begin, ensure you have the following:
| Requirement | Version | Notes |
|---|---|---|
| Node.js | 22+ | Download |
| Git | Latest | Version control |
| Package Manager | npm/pnpm/yarn | npm comes with Node.js |
| Optimizely CMS | Latest | Access to a CMS instance |
Get up and running in minutes:
# Install the SDK
npm install @optimizely/cms-sdk
# Install the CLI (for type syncing)
npm install -D @optimizely/cms-cli
For a complete walkthrough from scratch, see the Documentation section below.
The SDK includes built-in OpenTelemetry instrumentation for production observability. All major operations are automatically traced, including GraphQL queries, content fetching, and component resolution.
// Initialize OpenTelemetry SDK first
import { NodeSDK } from '@opentelemetry/sdk-node';
const sdk = new NodeSDK({ /* your config */ });
sdk.start();
// Then use the Optimizely SDK - all operations automatically instrumented
import { config, getClient } from '@optimizely/cms-sdk';
config({ apiKey: 'your-key' });
const client = getClient();
await client.getContentByPath('/'); // Automatically creates spans
What gets instrumented:
getContentByPath, getContent, getPreviewContent)Learn more: See the complete Observability Guide for setup, span details, and production configuration.
Reference implementation: See samples/nextjs-template/src/instrumentation.ts for a working example with Next.js.
A step-by-step guides to build your headless application:
npx claudepluginhub episerver/content-js-sdk --plugin optimizely-cms-skillsAgent skills for Contentful apps, APIs, migrations, and personalization
Production-ready skills for managing Webflow CMS content, auditing site health, optimizing assets, and safely publishing changes
Claude Code skill pack for Webflow (24 skills)
Content Collections TypeScript-first build tool for Markdown/MDX content. Use for blogs, docs, content sites with Vite + React, MDX components, type-safe Zod schemas, Contentlayer migration, or encountering TypeScript import errors, path alias issues, collection validation errors.
Sanity plugin for Claude Code with MCP server, agent skills, agent rules, and slash commands.
Editorial "Web Wizard" bundle for Claude Code from Antigravity Awesome Skills.