Vue-free advanced schema
import { getSchema } from '@tiptap/core'
import { advancedSchemaExtensions } from '@skaile/forge-editor/schema/advanced'
const schema = getSchema(advancedSchemaExtensions())
schema.nodeFromJSON(stored).check() // validate stored documents, run migrations, convert Yjs ↔ ProseMirror
advancedSchemaExtensions() is the node/mark set of the advanced editor in the exact order the browser editor uses: StarterKit (history off), StrikeX, media, transcript segment, Typed block family, mention/tag, the author and comment marks, BlockId and the node flags. It imports no Vue, React, Nuxt UI or browser globals and runs under plain Node; bun run check:editor-entries bundles it for Node and executes it, and compares the node/mark names, attributes and content expressions against a snapshot. Use @skaile/forge-editor/schema/simple for servers that only handle simple documents.
The package's collab server builds collabSchema() from this entry, or from the schema option when the host passes one (src/server/collab.ts, createCollabServer); a custom Hocuspocus server (e.g. for a plain-Vue or React app) does the same and sets the Collaboration field to default.