| Name | Modified | Size | Downloads / 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_linkfor 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 newline_tooltipsproperty (with optionalline_tooltip_html) (#5992 by @Jepson2k, @falkoschindler, @evnchn) - Add a
ui.plotly(nicegui.io)run_plot_method()helper (mirroringrun_grid_method/run_chart_method) with aPlotly.extendTracesdemo 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.settingsandapp.native.start_argswhen 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_columnsbecomes a tri-statebool | Nonedefaulting toNone(skipautoSizeStrategywhen columns use flex) (#5087, [#6080] by @davetapley, @evnchn, @falkoschindler) - Fix
Event.emitted()returningNoneinstead of the emitted arguments, adding an opt-inexpect_argsparameter toEvent.subscribe()(#6077, [#6078] by @falkoschindler, @evnchn) - Fix the
ui.sub_pages404 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 deletedwarning spam on reload when scene objects are mutated afterawait(#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 addaria-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.pathregression (#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!