Releases: TypeCellOS/BlockNote
Releases · TypeCellOS/BlockNote
v0.48.0
Immutable
release. Only release title and notes can be modified.
0.48.0 (2026-04-13)
🚨 Breaking
- Theme-related properties (fonts, colors, CSS variables) should target
.bn-rootinstead of.bn-container..bn-containernow only wraps the editor itself, while.bn-rootwraps both the editor and its floating UI (menus, toolbars). Layout related properties (width, height, margin) should still target.bn-container. Documentation has been updated to reflect this.
🚀 Features
- upgrade
shikito v4 andprosemirror-highlightto v0.15.1 (#2625) - portal floating UI elements to
document.bodyto prevent overflow clipping #2591
🩹 Fixes
- Image block selection clears on mouse leave in Safari (#2613)
- Backspace bug when current block is empty and previous block's last child is empty (#2610)
- allow using latest @tiptap/extension-link version (1ae8de713)
- restore depth guard in getParentBlockInfo to prevent RangeError (blo-1103) (#2585)
- pin better-auth to ~1.4.x to fix docs build (bda30458a)
- hide side menu on scroll instead of overflow hacks (#2630, #2043)
- disable default UI when no components context is found (#2611)
- placeholder when overflowing now wraps (#2291)
- core: fix unnesting blocks with siblings (BLO-1017) (#2601)
- core: backspace mid-text next to columnList moves block BLO-1126 (#2629)
🔥 Performance
- optimize plugin traversals for large documents BLO-1111 (#2600)
❤️ Thank You
- hedi-ghodhbane @hedi-ghodhbane
- Matthew Lipski @matthewlipski
- Nick the Sick @nperez0111
- Yousef
v0.47.3
v0.47.2
Immutable
release. Only release title and notes can be modified.
0.47.2 (2026-03-20)
🩹 Fixes
- use
<details>&<summary>for toggle block HTML export (#2524) - remove
@hocuspocus/providerpeer dependency by inlining tiptap comment types BLO-1064 (#2564) - core: slash menu fails in custom blocks after space BLO-1036 (#2553)
- i18n: fix typo in russian translation (#2560)
❤️ Thank You
- Drone
- Yousef
v0.47.1
Immutable
release. Only release title and notes can be modified.
0.47.1 (2026-03-02)
🩹 Fixes
- typeerror cannot read properties of undefined (#2522)
- handle more delete key cases (#2126)
- add delay for
data-activein collab cursors (#2383) - disable slash menu in table content #2408 (#2504, #2408)
- ai: selections broken due to floating-ui focus manager (#2527)
❤️ Thank You
- Matthew Lipski @matthewlipski
- Nick Perez
- Yousef
v0.47.0
Immutable
release. Only release title and notes can be modified.
0.47.0 (2026-02-23)
🚀 Features
- update suggestion menu component (#2397)
- i18n: add Persian (fa) localization support (#2447)
- i18n: add Uzbek (uz) localization support (#2506)
🩹 Fixes
- prevent nested bullet list icon rendering as emoji on iOS 18+ (#2394, #2399)
- ignore drag & drop from unrelated events #1968 (#2346, #1968)
- disable checkbox when editor is not editable #2406 (#2448, #2406)
- Backspace/enter behaviour in empty block with children (#2451)
- handle pasting into table cells better, by collapsing their content to inline #2410 (#2449, #2410)
- accessibility: ai combobox aria-activedescendant (#2413)
- ai: no more scrolling to top when opening AI menu (#2503)
- docs: unicode char not rendered in bug template (f13e270be)
❤️ Thank You
- Cyril G @Ovgodd
- Dex Devlon @bxff
- Matthew Lipski @matthewlipski
- MDSAM05 @MDSAM05
- Mohammad RAHMANI @Mrahmani71
- Nick Perez
- Ogabek @OgabekYuldoshev
- Wouter Vroege
- Yousef
v0.46.2
Immutable
release. Only release title and notes can be modified.
0.46.2 (2026-01-27)
This release ships a bunch of bug fixes, including many from the BlockNote community!
🩹 Fixes
- deep merge floatingUIOptions using nested spread operators (#2310)
- Visual differences between live editor and rendered exported HTML (#2348)
BlockNoteViewEditormismatched editable value (#2357)- add
font-synthesisfor italic & bold in fonts that don't have them specified #2325 (#2354, #2325) - disable code block language selector when editor is not editable (#2351)
- table handles would crash (#2384)
- update CreateLinkButton to be able to toggle popover visibility (#2316, #2313)
- add context,nestingLevel to toExternalHTML (#2373)
- ai: re-enable flipping the AIMenu when there is not enough space #2245 (#2247, #2245)
- link-toolbar: prevent Enter from submitting during IME composition (#2361)
❤️ Thank You
- hanios123
- Jean-Baptiste PENRATH
- Matthew Lipski @matthewlipski
- Nick Perez
- Shohei Yoshida @ysds
- Yousef
v0.46.1
Immutable
release. Only release title and notes can be modified.
0.46.1 (2026-01-10)
This was a version bump for some invalid CSS
v0.46.0
Immutable
release. Only release title and notes can be modified.
0.46.0 (2026-01-08)
The main feature of this release is now depending on the new Vercel AI SDK V6 (upgrade from V5) for our xl-ai package.
Other than that, this release was mainly bug fixes and dep upgrades to packages we depend on.
🚀 Features
🩹 Fixes
- emojipicker can sometimes fail to mount (575b81cec)
- LinkToolbar Event Listener leak (#2335)
- when you convert a block into checkListItem via inputRule, it should transfer its content into checkListItem content (#2331)
- do not return focus back to menu (484d7da36)
- arrow up on a checklist item should move to the element above BLO-362 (#2306)
- getPos race condition in React StrictMode (#2311)
- adjust input rules to be more tolerant to starting whitespace (#2341)
- ai: make sure ShowSelection works (#2297)
- xl-email-exporter: remove redundant sections in email export (#2323)
❤️ Thank You
- Nick Perez
- Nick the Sick @nperez0111
- supernova @tmpluto
- Yousef
v0.45.0
Immutable
release. Only release title and notes can be modified.
0.45.0 (2025-12-17)
🚀 Features
- ai: expand selections to contain words (#2304)
- extensions: extensions can now include other extensions for grouping into one extension (#2284)
🩹 Fixes
- an invalidly specified table should not crash the editor (#2255)
- filter out invalid heading items based on the current block schema in the slash menu #2253 (#2259, #2253)
- relax shiki package requirements #2279 (#2280, #2279)
- filter the default tiptap extensions #2282 (#2283, #2282)
- always include the cursor extension #2244 (#2260, #2244)
- make
onBeforeChangereturn the correct type again (9009369b1) - if there is no table block, there is no table handles to show #1055 (#2281, #1055)
- pass dragHandleMenu prop to DragHandleButton (#2254)
- html diff error with whitespace (#2230)
- update regex for checklist items #2288 (#2305, #2288)
- email-exporter: ReadableByteStreamController for safari react-email (#2295)
❤️ Thank You
- Max @maqen
- Nick Perez
- Nick the Sick @nperez0111
- Yousef
v0.44.2
0.44.2 (2025-12-09)
🩹 Fixes
- put back
onBeforeChangemethod #2221 (#2243, #2221) - Improper accessing of editor DOM element (#2234)
- make validation errors recoverable by llm (#2054)
- shadowdom support and example (#2223)
- ensure numbered list start property always present (#2241, #2242)
- Suggestion menu positioning (#2232)
- conditionally access the TableHandles extension from React (#2248)
- ai: upgrade prosemirror-suggest-changes (#2235)
❤️ Thank You
- Matthew Lipski @matthewlipski
- Nick Perez
- wcyat @sdip15fa
- Yousef