Displaying Document JSON

Displaying Document JSON

In this example, the document's JSON representation is displayed below the editor.

Try it out: Try typing in the editor and see the JSON update!

Relevant Docs:

import { Block } from "@blocknote/core";
import "@blocknote/core/fonts/inter.css";
import { BlockNoteView, useCreateBlockNote } from "@blocknote/react";
import "@blocknote/react/style.css";
import { useState } from "react";
import "./styles.css";
export default function App() {
  // Stores the document JSON.
  const [blocks, setBlocks] = useState<Block[]>([]);
  // Creates a new editor instance.
  const editor = useCreateBlockNote({
    initialContent: [
        type: "paragraph",
        content: "Welcome to this demo!",
        type: "heading",
        content: "This is a heading block",
        type: "paragraph",
        content: "This is a paragraph block",
        type: "paragraph",
  // Renders the editor instance and its document JSON.
  return (
    <div className={"wrapper"}>
      <div>BlockNote Editor:</div>
      <div className={"item"}>
          onChange={() => {
            // Saves the document JSON to state.
      <div>Document JSON:</div>
      <div className={"item bordered"}>
          <code>{JSON.stringify(blocks, null, 2)}</code>