VMPrintPreview Takes Center Stage
Most JavaScript PDF tools make you choose between two bad options: wrestle with print CSS until it breaks on page 2, or rewire your entire UI in JSX components just to get a rendered document. react-pdf is popular for a reason — it works — but it comes with a cost: a component model wrapped around a layout engine, dependencies all the way down, and no live preview that matches what you'll actually export.
VMPrint was built for the case where that tradeoff stops being acceptable. One layout pass. Live canvas preview. PDF, SVG, or server output — same session, same result. No React. No Chromium. No re-render surprises.
This release makes all of that visible in under ten seconds.
The preview demo is now the front door. The VMPrint homepage opens directly into the story, with the live preview demo embedded below it. Type Markdown, see the paginated layout update in real time, export a PDF. That's the pitch, and now it's the first thing you see.
New built-in style presets — Blueprint Atelier and Annual Report Two new presets that show what publication-grade layout actually looks like out of the box, not just functional defaults.
Better fit-to-page sizing and first-load behavior The preview now opens correctly sized on first load, and pages fit the viewport without manual adjustment.
Markdown image links now work in the browser demo Drop an image into your Markdown and it renders in the preview. Edge case, but an important one.
Drop-cap support in the Markdown pipeline Explicit drop-cap rendering via the transmuter layer.
Stronger social presence New Open Graph preview image, tightened SEO metadata, and clearer pathways from the homepage to docs, examples, and advanced layout samples.
The documentation has always described what VMPrint can do. This release lets you watch it do it.
If you've spent time fighting react-pdf's component model, or debugging print CSS page breaks at 11pm, VMPrint is worth five minutes of your time. The live demo runs in the browser, static, no install, and the code is right there in the page source.
- Homepage: https://cosmiciron.github.io/vmprint/
- Live preview demo: https://cosmiciron.github.io/vmprint/examples/preview/
- Advanced layout (AST + web fonts): https://cosmiciron.github.io/vmprint/examples/ast-to-canvas-webfonts/index.html
- Guides: https://cosmiciron.github.io/vmprint/guides/
v5.6.56
- [core] Allow
MENU_CONFoverrides to provide partial nested menu configs so TypeScript users can set - [table-module] Export fixed-layout tables with an explicit table width when column widths are known, so
colgroup - [table-module] Normalize table-cell soft line breaks to use standard
\nhandling so pressingEnterin a cell
Package versions
| Package | Version |
|---|---|
@wangeditor-next/basic-modules |
1.5.53 |
@wangeditor-next/code-highlight |
1.3.49 |
@wangeditor-next/core |
1.7.51 |
@wangeditor-next/editor |
5.6.56 |
@wangeditor-next/list-module |
1.1.58 |
@wangeditor-next/plugin-float-image |
1.0.41 |
@wangeditor-next/plugin-formula |
1.0.42 |
@wangeditor-next/plugin-link-card |
1.0.41 |
@wangeditor-next/plugin-markdown |
1.0.41 |
@wangeditor-next/plugin-mention |
1.0.26 |
@wangeditor-next/table-module |
1.6.67 |
@wangeditor-next/upload-image-module |
1.1.56 |
@wangeditor-next/video-module |
1.3.57 |
@wangeditor-next/yjs |
0.1.50 |
@wangeditor-next/yjs-for-react |
0.1.67 |
@wangeditor-next/yjs-for-vue |
0.1.10 |
Neutralinojs nightly release
- Implement
computer.getMousePosition(x, y)to update the current mouse cursor position. - Implement
computer.setMouseGrabbing(grabbing; boolean)to activate/deactivate confining the mouse cursor within the native app window. Ifgrabbingis set totrue, the mouse cursor always stays within the window boundaries, so this feature helps create interactive games and similar apps operated using the mouse. - Implement
computer.sendKey(keyCode, keyState)to simulate keyboard events. App developers can use a platform-specific key code and states (press,down, andup) to simulate from simple single key strokes to complex key combinations:
// Simulate letter 'a' press on GNU/Linux:
await Neutralino.computer.sendKey(38)
// Simulate Ctrl + V keyboard shortcut on GNU/Linux:
await Neutralino.computer.sendKey(105, 'down') // Hold right control
await Neutralino.computer.sendKey(47, 'down') // Hold letter 'v'
await Neutralino.computer.sendKey(47, 'up') // Release letter 'v'
await Neutralino.computer.sendKey(105, 'up') // Release right control
- Add
useTemplateIcon: booloption toos.setTray(options)for activating adaptive tray icon with the current color-scheme.
- Display app icon properly with the
os.showNotification()function when the app is launched from a Mac app bundle. - Fix the window-ordering issue with
window.focus()on macOS. - Auto-focus the app window when the Mac dock app icon was clicked.
- Write full C++ exceptions to the terminal to improve the framework bug-reporting experience.
Update the config file option cli.binaryVersion with nightly and enter neu update to fetch this version.
Get started: https://neutralino.js.org/docs
This release was auto-generated by ReleaseZri 🚀
v5.10.0
- i18n: The
localeoption has moved from the top-levelOptionstocontextMenu.locale.- The top-level
Options.localenow only accepts a language code (string) and is deprecated. - To provide custom translations or set the language, use
contextMenu: { locale: LangPack }. - Predefined language packs (like
en,zh_CN) are now available via the newi18nexport.
- The top-level
- Support preserving arrow delta coordinates (x,y) in plaintext converter
- feat: expose clearHistory() to reset the undo/redo stack by @DisciplinedSoftware in https://github.com/SSShooter/mind-elixir-core/pull/373
- Feature/locale refactor by @SSShooter in https://github.com/SSShooter/mind-elixir-core/pull/378
Full Changelog: https://github.com/SSShooter/mind-elixir-core/compare/v5.9.3...v5.10.0
Neutralinojs nightly release
- Implement
computer.getMousePosition(x, y)to update the current mouse cursor position. - Implement
computer.setMouseGrabbing(grabbing; boolean)to activate/deactivate confining the mouse cursor within the native app window. Ifgrabbingis set totrue, the mouse cursor always stays within the window boundaries, so this feature helps create interactive games and similar apps operated using the mouse. - Implement
computer.sendKey(keyCode, keyState)to simulate keyboard events. App developers can use a platform-specific key code and states (press,down, andup) to simulate from simple single key strokes to complex key combinations:
// Simulate letter 'a' press on GNU/Linux:
await Neutralino.computer.sendKey(38)
// Simulate Ctrl + V keyboard shortcut on GNU/Linux:
await Neutralino.computer.sendKey(105, 'down') // Hold right control
await Neutralino.computer.sendKey(47, 'down') // Hold letter 'v'
await Neutralino.computer.sendKey(47, 'up') // Release letter 'v'
await Neutralino.computer.sendKey(105, 'up') // Release right control
- Add
useTemplateIcon: booloption toos.setTray(options)for activating adaptive tray icon with the current color-scheme.
- Display app icon properly with the
os.showNotification()function when the app is launched from a Mac app bundle. - Fix the window-ordering issue with
window.focus()on macOS. - Auto-focus the app window when the Mac dock app icon was clicked.
- Write full C++ exceptions to the terminal to improve the framework bug-reporting experience.
Update the config file option cli.binaryVersion with nightly and enter neu update to fetch this version.
Get started: https://neutralino.js.org/docs
This release was auto-generated by ReleaseZri 🚀
v16.2.1-canary.12
- Upgrade React from
3cb2c420-20260324to9627b5a1-20260327: #92015 - [experiment] Add useOffline flag with offline retry behavior: #92011
- adapters: remove unused suffix code: #91997
- [experiment] Add useOffline hook to expose offline state to userland: #92012
- [turbopack] Don't use turborepo to build the docker image: #92029
- Use RcStr directly in napi(object) structs instead of converting to String: #92014
- Rename SingleModuleReference::asset to SingleModuleReference::module: #92028
Huge thanks to @acdlite, @ztanner, @mmastrac, @sokra, and @bgw for helping!
Release 2026-03-28 18:42
Release 2026-03-28 18:42
- preserve scroll position after SSR hash hydration (#7066) (6ee0e795b0) by @schiller-manuel
- @tanstack/react-router@1.168.8
- @tanstack/react-start@1.167.13
- @tanstack/react-start-client@1.166.23
- @tanstack/react-start-server@1.166.23
- @tanstack/router-cli@1.166.23
- @tanstack/router-core@1.168.7
- @tanstack/router-generator@1.166.22
- @tanstack/router-plugin@1.167.9
- @tanstack/router-vite-plugin@1.166.24
- @tanstack/solid-router@1.168.7
- @tanstack/solid-start@1.167.12
- @tanstack/solid-start-client@1.166.21
- @tanstack/solid-start-server@1.166.21
- @tanstack/start-client-core@1.167.7
- @tanstack/start-plugin-core@1.167.14
- @tanstack/start-server-core@1.167.7
- @tanstack/start-static-server-functions@1.166.23
- @tanstack/start-storage-context@1.166.21
- @tanstack/vue-router@1.168.7
- @tanstack/vue-start@1.167.12
- @tanstack/vue-start-client@1.166.21
- @tanstack/vue-start-server@1.166.21