Skip to main content
All props are passed directly to the <SuperDocEditor> component. Only document is required.

Quick start

Document props

File | Blob | string | object
required
Document to load. Accepts a File, Blob, URL string, or config object.
'editing' | 'viewing' | 'suggesting'
default:"'editing'"
Initial editing mode.
Changing documentMode via props is efficient — the component calls setDocumentMode() internally without rebuilding.
'editor' | 'viewer' | 'suggester'
default:"'editor'"
User’s permission level.

User props

{ name: string, email: string, image?: string }
Current user information.
Array<{ name: string, email: string, image?: string }>
All users (used for @-mentions).

UI props

string
Custom container ID. Auto-generated if not provided.
boolean
default:"false"
Hide the toolbar.
boolean
Show or hide rulers. Uses SuperDoc default if not set.
string
CSS class for the wrapper element.
CSSProperties
Inline styles for the wrapper element.
() => ReactNode
Custom loading UI rendered while SuperDoc initializes.

Event callbacks

({ superdoc }) => void
Fires when the editor is initialized and ready.
({ editor }) => void
Fires when the ProseMirror editor instance is created.
() => void
Fires when the editor is destroyed.
({ editor }) => void
Fires when the document content changes.
({ error, editor, documentId, file }) => void
Fires on document parsing errors.
({ error }) => void
Fires on runtime errors.

Advanced props

object
Configure collaboration, AI, comments, PDF, whiteboard, and other modules.
The component extends SuperDocConfig — any option from the core configuration can be passed as a prop.

Props that trigger rebuild

These props trigger a full instance rebuild when changed: Other props like documentMode and callbacks are handled efficiently without rebuild.