| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-10-07 | 5.7 kB | |
| v3.18.0 source code.tar.gz | 2026-10-07 | 24.5 MB | |
| v3.18.0 source code.zip | 2026-10-07 | 25.2 MB | |
| Totals: 3 Items | 49.7 MB | 0 | |
Security
- ⚠️ Reject uploads to disabled or hidden
ui.upload(nicegui.io) elements, whose upload route bypassed the server-side event check (GHSA-9mxh-cwxr-cxjj by @alperenkesk, @evnchn, @falkoschindler)
New features and enhancements
- Add
reveal_line()and the signalson_focus_change,on_viewport_changeandon_geometry_changetoui.codemirror(nicegui.io) (#5984 by @Jepson2k, @evnchn, @falkoschindler)
Bugfixes
- Report exceptions from
@ui.refreshablerebuilds, asyncEventsubscribers, asyncvalidationfunctions and other fire-and-forget tasks toui.on_exception(#6233, [#6234], [#6262], [#6363] by @evnchn, @SaadZahem, @falkoschindler) - Fix
ui.sub_pagesstaying in the SPA instead of loading pages registered viaapp.include_router(), also with FastAPI 0.141+ (#6281, [#6374] by @falkoschindler, @DineshThumma9, @KrilleGH, @evnchn) - Fix
button.clicked()(nicegui.io) registering a new click listener on every await (#6312, [#6333] by @falkoschindler, @jnchen, @evnchn) - Create the tab storage before the connect handlers run and in the On Air handshake (#6310, [#6332], [#6341], [#6355] by @evnchn, @jnchen, @Barry-Lenhart, @falkoschindler)
- Fix a duplicated browser tab sharing nested values of its tab storage with the original tab (#6364 by @falkoschindler, @evnchn)
- Fix Redis tab storage no longer receiving changes from other instances after a page reload (#6365 by @falkoschindler, @evnchn)
- Fix
ui.leaflet(nicegui.io) andui.scene(nicegui.io) elements being kept alive after their client is gone (#6339, [#6345] by @falkoschindler, @wolfgang-aura, @evnchn) - Fix elements staying registered when their constructor raises after
Element.__init__(#6343, [#6369] by @falkoschindler, @horizonbymuneeb) - Fix
make_sortable()having no effect on containers rendered after page load, like inside aui.dialog(nicegui.io) (#6353, [#6358] by @darronmcnutt, @evnchn, @falkoschindler) - Fix
ui.codemirror(nicegui.io) leaving its editor view alive after a remount (#6367, [#6368] by @falkoschindler, @evnchn) - Fix
ui.scene(nicegui.io) objects created before the scene is mounted being lost, a regression in 3.16 (#6379, [#6380] by @ptruka, @falkoschindler, @evnchn)
Documentation
- Add a Chinese translation of the website chrome under
/zh(#4025, [#6350] by @Yuerchu, @evnchn, @falkoschindler) - Add a sitemap and robots.txt to the website (#6357 by @falkoschindler, @evnchn)
- Update nicegui-highcharts to 3.5 and document that
point_indexofui.highchart(nicegui.io) is Highcharts' internal index (#6259, [#6347] by @aFlocker, @evnchn, @falkoschindler) - Document custom colors from
ui.colors(nicegui.io) for LLMs and in the documentation (#6351 by @falkoschindler, @evnchn) - Explain JavaScript expressions in
ui.aggrid(nicegui.io) options and log unknown row IDs inrun_row_method()(#6344, [#6362] by @csrubin, @falkoschindler, @evnchn) - Fix the
ui.scene(nicegui.io) docstrings for material side and spot light defaults (#6243 by @python-and-novella, @evnchn, @falkoschindler) - Clarify which
faviconvaluesui.run(nicegui.io) andui.pageaccept (#6354 by @DominiksITService, @falkoschindler)
Testing
- Close deferred background tasks when the test fixtures reset the app, which failed the first
Usertest after a module-levelui.timer(nicegui.io) (#6359 by @falkoschindler, @evnchn) -
Let
ElementFilterand theUserfixture match the values that input elements likeui.number(nicegui.io) display (#6352 by @falkoschindler, @evnchn)Breaking change:
user.should_not_see('42')now fails if aui.numbershows 42, andui.linear_progress,ui.circular_progressandui.dark_modeare no longer found by a value they do not display.
Dependencies
- Build the
ui.mermaid(nicegui.io) andui.json_editorbundles from package sources, so that the lockfiles decide which dependency versions ship (#6215, [#6375] by @falkoschindler, @evnchn)
Special thanks to our top sponsors DiscoLike Inc., TestMu AI 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!