Download Latest Version v3.13.0 source code.tar.gz (22.8 MB)
Email in envelope

Get an email when there's a new version of NiceGUI

Home / v3.13.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-06-09 4.8 kB
v3.13.0 source code.tar.gz 2026-06-09 22.8 MB
v3.13.0 source code.zip 2026-06-09 23.5 MB
Totals: 3 Items   46.3 MB 2

New features and enhancements

  • Introduce ui.skip_link for keyboard-accessibility skip links (WCAG 2.4.1 "Bypass Blocks") (#5790 by @evnchn, @falkoschindler)
  • Add per-line hover tooltips to ui.codemirror (nicegui.io) via a new line_tooltips property (with optional line_tooltip_html) (#5992 by @Jepson2k, @falkoschindler, @evnchn)
  • Add a ui.plotly (nicegui.io) run_plot_method() helper (mirroring run_grid_method/run_chart_method) with a Plotly.extendTraces demo for appending data without re-sending the full figure (#2660, [#6060] by @evnchn, @falkoschindler)
  • Improve the error message when storing a non-JSON-serializable value in app.storage (nicegui.io), pointing at the offending key path and the underlying type instead of an internal class name (#6044, [#6050] by @NichtJens, @falkoschindler, @evnchn)

Bugfixes

  • Fix dropped app.native.window_args, app.native.settings and app.native.start_args when the spawned window process can't re-execute the main module (e.g. console-scripts, python -m, PyInstaller); unpicklable values now emit a one-time warning instead of being silently dropped (#6082, [#6093] by @VFLins, @falkoschindler, @evnchn)
  • Fix blank ui.aggrid (nicegui.io) when flex columns use the infinite row model; auto_size_columns becomes a tri-state bool | None defaulting to None (skip autoSizeStrategy when columns use flex) (#5087, [#6080] by @davetapley, @evnchn, @falkoschindler)
  • Fix Event.emitted() returning None instead of the emitted arguments, adding an opt-in expect_args parameter to Event.subscribe() (#6077, [#6078] by @falkoschindler, @evnchn)
  • Fix the ui.sub_pages 404 sad-face persisting after client-side navigation when the page is first loaded at an unknown URL (#6069, [#6071] by @evnchn, @falkoschindler)

Note: Apps that relied on the styled sad-face overlay appearing on ui.sub_pages 404s now see only the inline 404: sub page X not found label inside their own chrome. The HTTP 404 status and the show_404=False escape hatch are unchanged.

  • Replace the misleading "remove the main guard" reload error for python -m <pkg> with a targeted message naming the package and the working alternatives (#181, [#3769], [#5280], [#5939], [#6066], [#6068] by @NichtJens, @evnchn, @falkoschindler)
  • Fix Client has been deleted warning spam on reload when scene objects are mutated after await (#6058, [#6059] by @codingpaula, @evnchn, @falkoschindler)

Note: Element.update(), run_method() and get_computed_prop() now stay silent only for the disconnect/reload race; using an element after an explicit element.delete() emits a one-shot warning with a stack trace.

Documentation

  • Improve the Markdown documentation served to AI agents: serve Markdown to known agent user-agents sending a wildcard Accept, emit heading prefixes while skipping decorative HTML and demo previews, and add aria-label/child-content labels to button Markdown (#6007, [#6052], [#6053], [#6054] by @evnchn, @falkoschindler, @HosseyNJF)
  • Fill llms.md (github.com) gaps in the element surface vs. ui.* exports (#6048, [#6051] by @evnchn, @falkoschindler)
  • Document how to keep ui.plotly (nicegui.io) responsive with large datasets by passing NumPy arrays / pandas Series instead of Python lists (#3340, [#6095] by @TsaiTung-Chen, @python-and-novella, @mohsenminaei, @krashdifferent, @eddie3ruff, @buiapp, @falkoschindler, @evnchn)
  • Fix bad Cumulative Layout Shift (CLS) on the documentation homepage (#6087, [#6089] by @evnchn, @falkoschindler)

Testing

  • Redo: randomize test ports and directories for parallel pytest sessions, re-applying [#5960] with a fix for the [#6061] import-time Storage.path regression (#5960, [#6061], [#6075] by @falkoschindler, @evnchn)

Infrastructure

  • Fix Selenium screenshot artifacts not being uploaded on test failure (#6086 by @HosseyNJF, @evnchn, @falkoschindler)

Special thanks to our top sponsors DiscoLike Inc. and Lechler GmbH

and all our other sponsors and contributors for supporting this project!

🙏 Want to support this project? Check out our GitHub Sponsors page to help us keep building amazing features!

Source: README.md, updated 2026-06-09