Repository Analysis

udecode/plate

Rich-text editor with AI and shadcn/ui

1.1 Likely human-written View on GitHub
1.1
Adjusted Score
1.1
Raw Score
100%
Time Factor
2026-05-29
Last Push
16,307
Stars
TypeScript
Language
847,119
Lines of Code
5920
Files
306
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 48HIGH 16MEDIUM 53LOW 189

Pattern Findings

306 matches across 17 categories. Click a row to expand file-level details.

Hallucination Indicators48 hits · 565 pts
SeverityFileLineSnippet
CRITICAL…de-block-browser-highlight-must-match-server-output.md129- `editor.plugins.code_block.options.lowlight.highlight('python', ...)`
CRITICAL…kages/core/src/internal/plugin/pipeInjectNodeProps.tsx17 editor.meta.pluginCache.inject.nodeProps.forEach((key) => {
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts122 editor.meta.pluginCache.node.isLeaf.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts126 editor.meta.pluginCache.node.isText.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts130 editor.meta.pluginCache.node.leafProps.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts134 editor.meta.pluginCache.node.textProps.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts138 editor.meta.pluginCache.render.aboveEditable.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts142 editor.meta.pluginCache.render.aboveSlate.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts146 editor.meta.pluginCache.render.afterEditable.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts150 editor.meta.pluginCache.render.beforeEditable.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts154 editor.meta.pluginCache.rules.match.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts158 editor.meta.pluginCache.render.afterContainer.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts162 editor.meta.pluginCache.render.beforeContainer.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts166 editor.meta.pluginCache.render.belowRootNodes.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts178 editor.meta.pluginCache.render.aboveNodes.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts182 editor.meta.pluginCache.render.belowNodes.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts190 editor.meta.pluginCache.handlers.onChange.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts193 editor.meta.pluginCache.handlers.onNodeChange.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts196 editor.meta.pluginCache.handlers.onTextChange.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts105 editor.meta.pluginCache.node.isContainer.push(plugin.key);
CRITICALpackages/core/src/internal/plugin/resolvePlugins.ts111 editor.meta.pluginCache.inject.nodeProps.push(plugin.key);
CRITICALpackages/core/src/static/pipeRenderElementStatic.tsx40 {editor.meta.pluginCache.render.belowRootNodes.map((key) => {
CRITICALpackages/core/src/static/pluginRenderLeafStatic.tsx56 editor.meta.pluginCache.node.isLeaf.forEach((key) => {
CRITICALpackages/core/src/static/pluginRenderLeafStatic.tsx64 editor.meta.pluginCache.node.leafProps.forEach((key) => {
CRITICALpackages/core/src/static/pluginRenderTextStatic.tsx57 editor.meta.pluginCache.node.isText.forEach((key) => {
CRITICALpackages/core/src/static/pluginRenderTextStatic.tsx65 editor.meta.pluginCache.node.textProps.forEach((key) => {
CRITICALpackages/core/src/static/pluginRenderElementStatic.tsx40 editor.meta.pluginCache.render.belowNodes.forEach((key) => {
CRITICALpackages/core/src/static/pluginRenderElementStatic.tsx57 {editor.meta.pluginCache.render.belowRootNodes.map((key) => {
CRITICALpackages/core/src/static/pluginRenderElementStatic.tsx66 editor.meta.pluginCache.render.aboveNodes.forEach((key) => {
CRITICALpackages/core/src/static/components/PlateStatic.tsx226 editor.meta.pluginCache.render.beforeEditable.forEach((key) => {
CRITICALpackages/core/src/static/components/PlateStatic.tsx240 editor.meta.pluginCache.render.afterEditable.forEach((key) => {
CRITICALpackages/core/src/static/components/PlateStatic.tsx276 editor.meta.pluginCache.render.aboveEditable.forEach((key) => {
CRITICALpackages/core/src/lib/utils/pipeOnNodeChange.ts11 return editor.meta.pluginCache.handlers.onNodeChange.some((key) => {
CRITICALpackages/core/src/lib/utils/pipeOnTextChange.ts13 return editor.meta.pluginCache.handlers.onTextChange.some((key) => {
CRITICALpackages/core/src/react/utils/pipeOnChange.ts10 return editor.meta.pluginCache.handlers.onChange.some((key) => {
CRITICALpackages/core/src/react/utils/pluginRenderElement.tsx42 editor.meta.pluginCache.render.belowNodes.forEach((key) => {
CRITICALpackages/core/src/react/utils/pluginRenderElement.tsx64 editor.meta.pluginCache.render.aboveNodes.forEach((key) => {
CRITICALpackages/core/src/react/utils/pluginRenderElement.tsx85 {editor.meta.pluginCache.render.belowRootNodes.map((key) => {
CRITICALpackages/core/src/react/utils/pipeRenderLeaf.tsx22 editor.meta.pluginCache.node.isLeaf.forEach((key) => {
CRITICALpackages/core/src/react/utils/pipeRenderLeaf.tsx30 editor.meta.pluginCache.node.leafProps.forEach((key) => {
CRITICALpackages/core/src/react/components/PlateContainer.tsx28 editor.meta.pluginCache.render.beforeContainer.forEach((key) => {
CRITICALpackages/core/src/react/components/PlateContainer.tsx42 editor.meta.pluginCache.render.afterContainer.forEach((key) => {
CRITICALpackages/core/src/react/components/PlateContent.tsx88 editor.meta.pluginCache.render.beforeEditable.forEach((key) => {
CRITICALpackages/core/src/react/components/PlateContent.tsx102 editor.meta.pluginCache.render.afterEditable.forEach((key) => {
CRITICALpackages/core/src/react/components/PlateContent.tsx127 editor.meta.pluginCache.render.aboveEditable.forEach((key) => {
CRITICALpackages/core/src/react/components/PlateSlate.tsx37 editor.meta.pluginCache.render.aboveSlate.forEach((key) => {
CRITICAL…ges/basic-nodes/src/lib/BaseHeadingInputRules.spec.tsx25 editor.meta.inputRules.plugins.h1.rules.map((rule) => rule.id)
CRITICAL…ges/basic-nodes/src/lib/BaseHeadingInputRules.spec.tsx28 editor.meta.inputRules.plugins.h3.rules.map((rule) => rule.id)
Hyper-Verbose Identifiers108 hits · 110 pts
SeverityFileLineSnippet
LOWpackages/docx-io/src/lib/internal/docx-document.ts218function generateContentTypesFragments(
LOWpackages/docx-io/src/lib/internal/docx-document.ts245function generateSectionReferenceXML(
LOW…ages/code-block/src/lib/withInsertFragmentCodeBlock.ts3function extractCodeLinesFromCodeBlock(node: TElement) {
LOW…ckages/code-block/src/lib/setCodeBlockToDecorations.ts160export function setCodeBlockToDecorations(
LOW…ckages/code-block/src/lib/setCodeBlockToDecorations.ts172export function resetCodeBlockDecorations(codeBlock: TCodeBlockElement) {
LOWpackages/yjs/src/utils/slateToDeterministicYjsState.ts13export async function slateToDeterministicYjsState(
LOWpackages/yjs/src/utils/slateToDeterministicYjsState.ts49async function generateDeterministicClientId(
LOW…ges/emoji/src/react/hooks/useEmojiDropdownMenuState.ts20export function useEmojiDropdownMenuState({
LOW…kages/udecode/react-hotkeys/src/internal/validators.ts30export function isKeyboardEventTriggeredByInput(ev: KeyboardEvent): boolean {
LOW…/udecode/react-hotkeys/src/internal/isHotkeyPressed.ts48export function pushToCurrentlyPressedKeys(key: string[] | string): void {
LOW…/udecode/react-hotkeys/src/internal/isHotkeyPressed.ts69export function removeFromCurrentlyPressedKeys(key: string[] | string): void {
LOW…act-hotkeys/src/internal/BoundHotkeysProxyProvider.tsx22export default function BoundHotkeysProxyProviderProvider({
LOWpackages/udecode/cmdk/src/cmdk.tsx1301function SlottableWithNestedChildren(
LOW…s/table/src/lib/queries/getSelectedCellsBoundingBox.ts8export function getSelectedCellsBoundingBox(
LOW…kages/table/src/lib/queries/getSelectedCellsBorders.ts220export function isSelectedCellBordersNone(
LOW…kages/table/src/lib/queries/getSelectedCellsBorders.ts268export function isSelectedCellBordersOuter(
LOW…es/selection/src/react/hooks/useBlockSelectionNodes.ts23export function useBlockSelectionFragment() {
LOW…es/selection/src/react/hooks/useBlockSelectionNodes.ts29export function useBlockSelectionFragmentProp(
LOW…/skills/planning-with-files/scripts/session-catchup.py127def find_current_codex_session(sessions: List[Path]) -> Optional[Path]:
LOW…/skills/planning-with-files/scripts/session-catchup.py217def find_last_planning_update(messages: List[Dict[str, Any]]) -> Tuple[int, Optional[str]]:
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py36def check_uncommitted_changes():
LOW…ate/src/app/api/ai/command/prompt/getGeneratePrompt.ts15function buildGenerateFreeformPrompt(messages: ChatMessage[]) {
LOW…ate/src/app/api/ai/command/prompt/getGeneratePrompt.ts59function buildGenerateContextPrompt(
LOW…emplate/src/app/api/ai/command/prompt/getEditPrompt.ts18function buildEditMultiBlockPrompt(
LOW…te/src/app/api/ai/command/prompt/getEditTablePrompt.ts12export function buildEditTableMultiCellPrompt(
LOW…yground-template/src/components/ui/suggestion-node.tsx55export function getBlockSuggestionWrapperClassName({
LOW…yground-template/src/components/ui/suggestion-node.tsx85export function VoidRemoveSuggestionOverlay({
LOW…yground-template/src/components/ui/suggestion-node.tsx108export function SuggestionLineBreakAnchor({
LOW…yground-template/src/components/ui/suggestion-node.tsx139function SuggestionLineBreakElementAnchor({
LOW…yground-template/src/components/ui/suggestion-node.tsx265export function SuggestionLineBreakContent({
LOW…nd-template/src/components/ui/equation-node-static.tsx55export function InlineEquationElementStatic(
LOW…nd-template/src/components/ui/equation-node-static.tsx139export function InlineEquationElementDocx(
LOW…late-playground-template/src/components/ui/toolbar.tsx198export function ToolbarSplitButtonPrimary({
LOW…late-playground-template/src/components/ui/toolbar.tsx223export function ToolbarSplitButtonSecondary({
LOW…nd-template/src/components/ui/footnote-node-static.tsx5export function FootnoteReferenceElementStatic(
LOW…nd-template/src/components/ui/footnote-node-static.tsx21export function FootnoteDefinitionElementStatic(
LOW…-template/src/components/ui/suggestion-node-static.tsx40export function isStaticVoidRemoveSuggestion(element: TElement) {
LOW…-template/src/components/ui/suggestion-node-static.tsx47export function VoidRemoveSuggestionOverlayStatic({
LOW…template/src/components/ui/equation-toolbar-button.tsx10export function InlineEquationToolbarButton(
LOW…und-template/src/components/ui/list-toolbar-button.tsx27export function BulletedListToolbarButton() {
LOW…und-template/src/components/ui/list-toolbar-button.tsx105export function NumberedListToolbarButton() {
LOW…layground-template/src/components/ui/footnote-node.tsx223export function FootnoteDefinitionElement(
LOW…round-template/src/components/ui/table-node-static.tsx96export function TableCellHeaderElementStatic(
LOW…e-playground-template/src/components/ui/table-node.tsx815function ExpandedSelectionTableFloatingToolbarContent(
LOW…e-playground-template/src/components/ui/table-node.tsx834function CollapsedTableFloatingToolbarContent(
LOW…e-playground-template/src/components/ui/table-node.tsx871function TableFloatingToolbarContent({
LOW…e-playground-template/src/components/ui/table-node.tsx1010function TableBordersDropdownMenuContent(
LOW…round-template/src/components/ui/code-drawing-node.tsx47function createDebouncedCodeDrawingRenderer(
LOW…nd-template/src/components/ui/emoji-toolbar-button.tsx387function EmojiPickerSearchAndClear({
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py36def check_uncommitted_changes():
LOWtemplates/plate-template/src/components/ui/toolbar.tsx198export function ToolbarSplitButtonPrimary({
LOWtemplates/plate-template/src/components/ui/toolbar.tsx223export function ToolbarSplitButtonSecondary({
LOWapps/www/public/r/footnote-node.json20 "content": "'use client';\n\nimport * as React from 'react';\n\nimport type { TFootnoteElement } from '@platejs/fo
LOWapps/www/public/r/footnote-node.json25 "content": "import * as React from 'react';\n\nimport type { TFootnoteElement } from '@platejs/footnote';\nimport
LOWapps/www/public/r/ai-api.json53 "content": "import type { ChatMessage } from '@/registry/components/editor/use-chat';\nimport type { SlateEditor }
LOWapps/www/public/r/ai-api.json59 "content": "import type { ChatMessage } from '@/registry/components/editor/use-chat';\nimport type { SlateEditor }
LOWapps/www/public/r/ai-api.json65 "content": "import type { ChatMessage } from '@/registry/components/editor/use-chat';\nimport type { SlateEditor }
LOWapps/www/public/r/equation-node.json23 "content": "import * as React from 'react';\n\nimport type { TEquationElement } from 'platejs';\nimport type { Sla
LOWapps/www/public/r/plugin-input-rules-docs.json10 "content": "---\ntitle: Plugin Input Rules\ndescription: Typed editor rules for markdown shortcuts, block fences,
LOWapps/www/public/r/code-drawing-node.json19 "content": "'use client';\n\nimport * as React from 'react';\n\nimport type {\n CodeDrawingType,\n TCodeDrawingE
48 more matches not shown…
AI Slop Vocabulary22 hits · 50 pts
SeverityFileLineSnippet
MEDIUM…ckages/docx-io/src/lib/internal/helpers/xml-builder.ts1209 // Essentially if background color needs to be across the row
MEDIUMapps/www/public/r/ai-api.json53 "content": "import type { ChatMessage } from '@/registry/components/editor/use-chat';\nimport type { SlateEditor }
LOWapps/www/public/r/api-react-utils-docs.json10 "content": "---\ntitle: React Utils\ndescription: API reference for @udecode/react-utils.\n---\n\n`@udecode/react-
MEDIUMapps/www/public/r/editor-docs.json10 "content": "---\ntitle: Editor Configuration\ndescription: Learn how to configure and customize the Plate editor.\
MEDIUMapps/www/public/r/plugin-rules-docs.json10 "content": "---\ntitle: Plugin Rules\ndescription: Configure common editing behaviors.\n---\n\nPlugin Rules contro
MEDIUMapps/www/public/r/markdown-streaming-demo.json14 "content": "'use client';\nimport {\n type HTMLAttributes,\n useCallback,\n useReducer,\n useRef,\n useState,
MEDIUMapps/www/public/r/markdown-streaming-demo.json14 "content": "'use client';\nimport {\n type HTMLAttributes,\n useCallback,\n useReducer,\n useRef,\n useState,
MEDIUMapps/www/public/r/migration-v48-docs.json10 "content": "---\ntitle: Major Releases\n---\n\n<Callout type=\"info\">\n This page covers **major breaking change
MEDIUMapps/www/public/r/migration-v48-docs.json10 "content": "---\ntitle: Major Releases\n---\n\n<Callout type=\"info\">\n This page covers **major breaking change
MEDIUMapps/www/public/r/migration-v48-docs.json10 "content": "---\ntitle: Major Releases\n---\n\n<Callout type=\"info\">\n This page covers **major breaking change
MEDIUMapps/www/public/r/components-changelog-docs.json10 "content": "---\ntitle: Changelog\ndescription: Latest component updates and announcements.\ntoc: true\n---\n\nSin
LOWapps/www/public/r/components-changelog-docs.json10 "content": "---\ntitle: Changelog\ndescription: Latest component updates and announcements.\ntoc: true\n---\n\nSin
MEDIUMapps/www/public/r/plugin-methods-docs.json10 "content": "---\ntitle: Plugin Methods\ndescription: Explore the various methods available for extending Plate plu
MEDIUMapps/www/public/r/index-docs.json10 "content": "---\ntitle: Introduction\ndescription: Rich-text editor framework with AI, MCP, and shadcn/ui\n---\n\n
MEDIUMapps/www/public/r/index-docs.json10 "content": "---\ntitle: Introduction\ndescription: Rich-text editor framework with AI, MCP, and shadcn/ui\n---\n\n
MEDIUMapps/www/public/r/installation-mcp-docs.json10 "content": "---\ntitle: MCP Server\ndescription: Use the Model Context Protocol with Plate.\n---\n\nPlate has an o
MEDIUMapps/www/public/r/media-docs.json10 "content": "---\ntitle: Media\ndocs:\n - route: https://pro.platejs.org/docs/examples/media\n title: Plus\n -
MEDIUMapps/www/public/r/installation-plate-ui-docs.json10 "content": "---\ntitle: Plate UI Installation\ndescription: How to set up Plate UI in your project.\n---\n\nThis g
MEDIUMapps/www/public/r/copilot-docs.json10 "content": "---\ntitle: Copilot\ndescription: AI-powered text completion suggestions.\ndocs:\n - route: https://p
MEDIUMapps/www/public/r/migration-slate-to-plate-docs.json10 "content": "---\ntitle: Migrating from Slate to Plate\ndescription: Learn how to migrate from Slate to Plate.\n---
MEDIUMapps/www/public/r/migration-slate-to-plate-docs.json10 "content": "---\ntitle: Migrating from Slate to Plate\ndescription: Learn how to migrate from Slate to Plate.\n---
MEDIUMapps/www/src/config/docs-plugins.ts291 // ! Wait for more robust implementation
Cross-File Repetition8 hits · 40 pts
SeverityFileLineSnippet
HIGH….agents/skills/coding-tutor/scripts/create_tutorial.py0get the path for the tutorials repo (~/coding-tutor-tutorials/).
HIGH….agents/skills/coding-tutor/scripts/setup_tutorials.py0get the path for the tutorials repo (~/coding-tutor-tutorials/).
HIGH….agents/skills/coding-tutor/scripts/create_tutorial.py0get the path for the tutorials repo (~/coding-tutor-tutorials/).
HIGH….agents/skills/coding-tutor/scripts/setup_tutorials.py0get the path for the tutorials repo (~/coding-tutor-tutorials/).
HIGH….agents/skills/coding-tutor/scripts/index_tutorials.py0get the tutorials directory (~/coding-tutor-tutorials/).
HIGH…e/.agents/skills/coding-tutor/scripts/quiz_priority.py0get the tutorials directory (~/coding-tutor-tutorials/).
HIGH….agents/skills/coding-tutor/scripts/index_tutorials.py0get the tutorials directory (~/coding-tutor-tutorials/).
HIGH…e/.agents/skills/coding-tutor/scripts/quiz_priority.py0get the tutorials directory (~/coding-tutor-tutorials/).
Over-Commented Block37 hits · 37 pts
SeverityFileLineSnippet
LOWlefthook.yml1# EXAMPLE USAGE:
LOWlefthook.yml21# parallel: true
LOWlefthook.yml41# - script: "hello.go"
LOWtooling/config/.ncurc.yml1# npm-check-updates configuration used by pnpm deps:check && pnpm deps:update
LOWtooling/config/playwright.config.ts41 // {
LOWpackages/layout/src/lib/withColumn.ts81 }
LOWpackages/udecode/cmdk/src/internal/command-score.ts1// The scores are arranged so that a continuous match of characters will
LOWpackages/udecode/cmdk/src/internal/command-score.ts21 // However, it may well be the case that there's a sensible secondary
LOW.github/workflows/ci.yml141 # pnpm exec playwright install
LOW…-playground-template/src/components/editor/use-chat.ts1341 {
LOW…-playground-template/src/components/editor/use-chat.ts1361 // {
LOWapps/www/next.config.ts181 // config.externals.push({
LOWapps/www/src/app/(app)/docs/[[...slug]]/doc-content.tsx261 <div className="flex flex-1 flex-col gap-12 px-6">
LOWapps/www/src/app/(app)/docs/[[...slug]]/page.tsx381// const pkg = docToPackage(name);
LOWapps/www/src/app/(app)/docs/[[...slug]]/page.tsx401// } else {
LOWapps/www/src/components/site-header.tsx21 // headers: {
LOWapps/www/src/components/site-header.tsx101 // <nav className="flex items-center gap-0.5">
LOWapps/www/src/registry/registry-pro.ts121 // - Categorized emoji selection
LOWapps/www/src/registry/registry-pro.ts141 // description: `- Enhanced link editing experience
LOWapps/www/src/registry/registry-pro.ts161 // {
LOWapps/www/src/registry/registry-pro.ts181 // - Keyboard navigation support
LOWapps/www/src/registry/registry-pro.ts201 // {
LOWapps/www/src/registry/registry-pro.ts221 // - Beautifully crafted UI`,
LOWapps/www/src/registry/components/editor/use-chat.ts1361 // delay,
LOW…ps/www/src/registry/examples/hundreds-editors-demo.tsx21 <Plate editor={editor}>
LOW…ps/www/src/registry/examples/hundreds-editors-demo.tsx41// const editor = useMemo(() => withReact(createEditor() as ReactEditor), []);
LOW…w/src/registry/examples/values/cn/playground-value.tsx101 type: 'insert',
LOWapps/www/src/lib/rehype-component.ts221 // }
LOWapps/www/src/lib/rehype-component.ts241 // u('element', {
LOWapps/www/src/lib/rehype-component.ts281 // children: [
LOWapps/www/src/lib/rehype-component.ts301 // node,
LOWapps/www/src/lib/rehype-component.ts321
LOWapps/www/src/lib/rehype-component.ts341 // })
LOWapps/www/src/lib/rehype-component.ts361 // }),
LOWapps/www/src/lib/rehype-utils.ts61 return node.attributes?.find((attribute) => attribute.name === name);
LOWapps/www/src/lib/rehype-utils.ts181 isShadcn || isDependencyShadcn
LOWapps/www/src/lib/rehype-utils.ts201
Synthetic Comment Markers5 hits · 32 pts
SeverityFileLineSnippet
HIGHpackages/comment/CHANGELOG.md48- [#4587](https://github.com/udecode/plate/pull/4587) by [@felixfeng33](https://github.com/felixfeng33) – Enhanced comme
HIGHpackages/comment/CHANGELOG.md48- [#4587](https://github.com/udecode/plate/pull/4587) by [@felixfeng33](https://github.com/felixfeng33) – Enhanced comme
HIGHapps/www/public/r/ai-api.json47 "content": "import type { ChatMessage } from '@/registry/components/editor/use-chat';\nimport type { SlateEditor }
HIGHapps/www/public/r/ai-docs.json10 "content": "---\ntitle: AI\ndescription: AI-powered writing assistance.\ndocs:\n - route: https://pro.platejs.org
HIGHapps/www/public/r/ai-docs.json10 "content": "---\ntitle: AI\ndescription: AI-powered writing assistance.\ndocs:\n - route: https://pro.platejs.org
Slop Phrases15 hits · 32 pts
SeverityFileLineSnippet
MEDIUM…emplate/src/app/api/ai/command/prompt/getEditPrompt.ts49 Hey, here's how you can set things up quickly.
MEDIUMapps/www/public/r/typescript-docs.json10 "content": "---\ntitle: TypeScript\ndescription: Configure TypeScript (tsconfig) for using Plate, including module
MEDIUMapps/www/public/r/ai-api.json53 "content": "import type { ChatMessage } from '@/registry/components/editor/use-chat';\nimport type { SlateEditor }
MEDIUMapps/www/public/r/editor-methods-docs.json10 "content": "---\ntitle: Editor Methods\ndescription: Explore the various methods available for interacting with an
MEDIUMapps/www/public/r/editor-docs.json10 "content": "---\ntitle: Editor Configuration\ndescription: Learn how to configure and customize the Plate editor.\
MEDIUMapps/www/public/r/block-selection-docs.json10 "content": "---\ntitle: Block Selection\ndocs:\n - route: /docs/components/block-selection\n title: Block Sele
MEDIUMapps/www/public/r/plugin-methods-docs.json10 "content": "---\ntitle: Plugin Methods\ndescription: Explore the various methods available for extending Plate plu
MEDIUMapps/www/public/r/plugin-context-docs.json10 "content": "---\ntitle: Plugin Context\ndescription: Understanding and utilizing the Plugin Context in Plate plugi
MEDIUMapps/www/public/r/toolbar-docs.json10 "content": "---\ntitle: Toolbar\ndescription: Fixed and floating toolbars for your editor.\ndocs:\n - route: http
MEDIUMapps/www/public/r/controlled-docs.json10 "content": "---\ntitle: Controlled Editor Value\ndescription: How to control the editor value.\n---\n\nImplementin
MEDIUMapps/www/public/r/plugin-docs.json10 "content": "---\ntitle: Plugin Configuration\ndescription: How to configure and customize Plate plugins.\n---\n\nP
MEDIUMapps/www/public/r/installation-docs-docs.json10 "content": "---\ntitle: Local Docs\ndescription: Set up Plate's documentation locally for version-controlled, AI-e
MEDIUMapps/www/public/r/migration-slate-to-plate-docs.json10 "content": "---\ntitle: Migrating from Slate to Plate\ndescription: Learn how to migrate from Slate to Plate.\n---
MEDIUMapps/www/public/r/plugin-shortcuts-docs.json10 "content": "---\ntitle: Plugin Shortcuts\ndescription: Learn how to configure keyboard shortcuts.\n---\n\nKeyboard
MEDIUM…rc/registry/app/api/ai/command/prompt/getEditPrompt.ts50 Hey, here's how you can set things up quickly.
Decorative Section Separators10 hits · 30 pts
SeverityFileLineSnippet
MEDIUM…ckages/core/src/react/stores/plate/createPlateStore.ts169// ─── Selectors ───────────────────────────────────────────────────────────────
MEDIUM…ckages/core/src/react/stores/plate/createPlateStore.ts250// ─── Actions ─────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts4// ─────────────────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts6// ─────────────────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts72// ─────────────────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts74// ─────────────────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts124// ─────────────────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts126// ─────────────────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts188// ─────────────────────────────────────────────────────────────────────────────
MEDIUMpackages/utils/src/lib/plate-types.ts190// ─────────────────────────────────────────────────────────────────────────────
Excessive Try-Catch Wrapping14 hits · 14 pts
SeverityFileLineSnippet
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py31 except Exception:
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py47 except Exception:
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py201 except Exception as e:
MEDIUM….agents/skills/coding-tutor/scripts/create_tutorial.py202 print(f"Error creating tutorial: {e}", file=sys.stderr)
LOW….agents/skills/coding-tutor/scripts/setup_tutorials.py95 except Exception as e:
LOW….agents/skills/coding-tutor/scripts/index_tutorials.py187 except Exception as e:
MEDIUM….agents/skills/coding-tutor/scripts/index_tutorials.py188 print(f"Error indexing tutorials: {e}", file=sys.stderr)
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py31 except Exception:
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py47 except Exception:
LOW….agents/skills/coding-tutor/scripts/create_tutorial.py201 except Exception as e:
MEDIUM….agents/skills/coding-tutor/scripts/create_tutorial.py202 print(f"Error creating tutorial: {e}", file=sys.stderr)
LOW….agents/skills/coding-tutor/scripts/setup_tutorials.py95 except Exception as e:
LOW….agents/skills/coding-tutor/scripts/index_tutorials.py187 except Exception as e:
MEDIUM….agents/skills/coding-tutor/scripts/index_tutorials.py188 print(f"Error indexing tutorials: {e}", file=sys.stderr)
Fake / Example Data12 hits · 13 pts
SeverityFileLineSnippet
LOW…n/src/lib/deserializer/deserializeMentionLink.spec.tsx20 <hmention key="john_doe" value="John Doe">
LOW…s/markdown/src/lib/serializer/serializeMention.spec.ts69 value: 'John Doe',
LOW…s/markdown/src/lib/serializer/serializeMention.spec.ts91 value: 'John Doe',
LOWpackages/yjs/README.md232metadata.set('author', 'John Doe');
LOW…kages/slate/src/interfaces/editor/editor-transforms.ts584 * example, if `ipsum` was selected in a `Text` node with `lorem ipsum dolar`,
LOW…kages/slate/src/interfaces/editor/editor-transforms.ts586 * `Text` node. If `split: false`, the entire `Text` node `lorem ipsum dolar`
LOW…ocx/src/lib/docx-cleaner/__tests__/input/v-shapes.html30<p class=MsoNormal>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed
LOW…ocx/src/lib/docx-cleaner/__tests__/input/v-shapes.html30<p class=MsoNormal>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed
LOW…/src/__tests__/package-integration/docx/align.slow.tsx17 Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
LOW…/src/__tests__/package-integration/docx/align.slow.tsx17 Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
LOW…/www/src/__tests__/package-integration/docx/align.html291 >Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
LOW…/www/src/__tests__/package-integration/docx/align.html291 >Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
Magic Placeholder Names2 hits · 12 pts
SeverityFileLineSnippet
HIGHapps/www/public/r/ai-docs.json10 "content": "---\ntitle: AI\ndescription: AI-powered writing assistance.\ndocs:\n - route: https://pro.platejs.org
HIGHapps/www/public/r/copilot-docs.json10 "content": "---\ntitle: Copilot\ndescription: AI-powered text completion suggestions.\ndocs:\n - route: https://p
Self-Referential Comments4 hits · 8 pts
SeverityFileLineSnippet
MEDIUMapps/www/public/r/installation-node-docs.json10 "content": "---\ntitle: Node.js\ndescription: Install and configure Plate for Node.js\n---\n\nThis guide demonstra
MEDIUMapps/www/public/r/installation-rsc-docs.json10 "content": "---\ntitle: RSC\ndescription: Install and configure Plate for React Server Components\n---\n\nThis gui
MEDIUMapps/www/public/r/combobox-docs.json10 "content": "---\ntitle: Combobox\ndocs:\n - route: /docs/components/inline-combobox\n title: Inline Combobox\n
MEDIUMapps/www/public/r/static-docs.json10 "content": "---\ntitle: Static Rendering\ndescription: A minimal, memoized, read-only version of Plate with RSC/SS
Deep Nesting7 hits · 7 pts
SeverityFileLineSnippet
LOW…/skills/planning-with-files/scripts/session-catchup.py107
LOW…/skills/planning-with-files/scripts/session-catchup.py217
LOW…/skills/planning-with-files/scripts/session-catchup.py290
LOW….agents/skills/coding-tutor/scripts/index_tutorials.py25
LOW…e/.agents/skills/coding-tutor/scripts/quiz_priority.py39
LOW….agents/skills/coding-tutor/scripts/index_tutorials.py25
LOW…e/.agents/skills/coding-tutor/scripts/quiz_priority.py39
Verbosity Indicators5 hits · 7 pts
SeverityFileLineSnippet
LOWpackages/core/src/internal/plugin/resolvePlugins.ts492 // Step 1: Resolve, flatten, and merge all plugins
LOWpackages/core/src/internal/plugin/resolvePlugins.ts495 // Step 2: Filter out disabled plugins
LOWpackages/core/src/internal/plugin/resolvePlugins.ts500 // Step 3: Sort plugins by priority
LOWpackages/core/src/internal/plugin/resolvePlugins.ts503 // Step 4: Reorder based on dependencies
LOWapps/www/public/r/installation-mcp-docs.json10 "content": "---\ntitle: MCP Server\ndescription: Use the Model Context Protocol with Plate.\n---\n\nPlate has an o
Redundant / Tautological Comments4 hits · 6 pts
SeverityFileLineSnippet
LOWtooling/scripts/brl.sh50# Check if the src/react directory exists and run barrelsby if it does and if index.tsx doesn't exist
LOWtooling/scripts/brl.sh55# Check if the src/static directory exists and run barrelsby if it does and if index.tsx doesn't exist
LOW…s/skills/planning-with-files/scripts/check-complete.sh2# Check if all phases in task_plan.md are complete
LOW…/skills/planning-with-files/scripts/session-catchup.py377 # Check if planning files exist (indicates active task)
Cross-Language Confusion (JS/TS)1 hit · 5 pts
SeverityFileLineSnippet
HIGH…/www/src/registry/examples/values/code-block-value.tsx45 <hcodeline>{` """Get a task by index, return None if not found."""`}</hcodeline>
Unused Imports4 hits · 4 pts
SeverityFileLineSnippet
LOW….agents/skills/coding-tutor/scripts/index_tutorials.py15
LOW…e/.agents/skills/coding-tutor/scripts/quiz_priority.py13
LOW….agents/skills/coding-tutor/scripts/index_tutorials.py15
LOW…e/.agents/skills/coding-tutor/scripts/quiz_priority.py13