Files

@wrnexus/content

Typed content collections for Markdown/MDX-like documents and remote CMS records. Collections validate frontmatter through any { parse(input) } schema, render escaped HTML, and expose draft preview, versions, references, headings, search indexes, pagination, RSS and sitemaps.

const posts = defineCollection({
  name: "posts",
  schema: PostSchema,
  loader: localContentLoader("content/posts"),
  previewToken: process.env.CONTENT_PREVIEW_TOKEN,
});

const published = await posts.load();
const preview = await posts.load({ previewToken: request.headers.get("x-preview-token") ?? "" });

Remote systems implement CmsAdapter, use cmsContentLoader, or return JSON records through remoteContentLoader. Markdown HTML is escaped by default; raw executable HTML is never trusted.