{"record":{"id":"4249843fddf602b7","repo":"ueberdosis/tiptap","slug":"tiptap-error-node-extension-name-cannot-be-r","errorCode":null,"errorMessage":"[tiptap error]: Node ${extension.name} cannot be rendered, it is missing a \"renderToHTML\" method, please implement it or override the corresponding \"nodeMapping\" method to have a custom renderer","messagePattern":"\\[tiptap error\\]: Node (.+?) cannot be rendered, it is missing a \"renderToHTML\" method, please implement it or override the corresponding \"nodeMapping\" method to have a custom renderer","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/static-renderer/src/pm/extensionRenderer.ts","lineNumber":99,"sourceCode":"  options?: Partial<Pick<TiptapStaticRendererOptions<T, Mark, PMNode>, 'unhandledNode'>>,\n): [string, (props: NodeProps<PMNode, T | T[]>) => T] {\n  const context = {\n    name: extension.name,\n    options: extension.options,\n    storage: extension.storage,\n    parent: extension.parent,\n  }\n\n  const renderToHTML = getExtensionField<NodeConfig['renderHTML']>(extension, 'renderHTML', context)\n\n  if (!renderToHTML) {\n    if (options?.unhandledNode) {\n      return [extension.name, options.unhandledNode]\n    }\n    return [\n      extension.name,\n      () => {\n        throw new Error(\n          `[tiptap error]: Node ${extension.name} cannot be rendered, it is missing a \"renderToHTML\" method, please implement it or override the corresponding \"nodeMapping\" method to have a custom rendering`,\n        )\n      },\n    ]\n  }\n\n  return [\n    extension.name,\n    ({ node, children }) => {\n      try {\n        return domOutputSpecToElement(\n          renderToHTML({\n            node,\n            HTMLAttributes: getHTMLAttributes(node, extensionAttributes),\n          }),\n        )(children)\n      } catch (e) {\n        throw new Error(","sourceCodeStart":81,"sourceCodeEnd":117,"githubUrl":"https://github.com/ueberdosis/tiptap/blob/496d53afd7e4e3c7424b4749adeff4f45e27ddb0/packages/static-renderer/src/pm/extensionRenderer.ts#L81-L117","documentation":"Error \"[tiptap error]: Node ${extension.name} cannot be rendered, it is missing a \"renderToHTML\" method, please implement it or override the corresponding \"nodeMapping\" method to have a custom renderer\" thrown in ueberdosis/tiptap.","triggerScenarios":"Thrown at packages/static-renderer/src/pm/extensionRenderer.ts:99 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"496d53afd7e4e3c7424b4749adeff4f45e27ddb0","analyzedAt":"2026-08-26T22:41:43.400Z","schemaVersion":2},"datasetVersion":"2026-08-27T03:17:27.898Z"}