We've released version 0.10.6, focusing on stability and bug fixes rather than large overhauls. But that's not to say there nothing has changed—there are still some exciting improvements!
Improved rio run
🌐
One of the great things about Rio is how rio run
auto-detects changes to your project and reloads the page. This feature has been further refined:
rio run
now reloads all packages in the project folder, not just the main module. If your project is split into multiple sub-projects, all of them will be kept up-to-date automatically. Packages within virtual environments are exempt from this to avoid unnecessary reloads and keep everything responsive.
You’ve long been able to load Rio apps as FastAPI apps with the as_fastapi()
method:
app = rio.App(...)
fastapi_app = app.as_fastapi()
fastapi_app.add_route(...)
Previously, rio run
would still execute the original app
, not fastapi_app
, which meant any custom routes you added were left out. To host such an app, you’d need to rely on other servers, like uvicorn
, sacrificing the Rio dev tools.
This limitation is gone! rio run
will now prioritize Rio apps converted to FastAPI, hosting those first. If none are found, it will fall back to the standard Rio app. Now you can enjoy custom routes and middlewares without losing any of the dev tools.
Better Tables 📊
rio.Table
has received some much-needed attention. We realize that many of you are using Rio for data-science applications and just how important tables are in that context. While we still consider them experimental for now, tables now look much nicer than before and we've laid the groundwork for more improvements to come. Watch this space!
Up Next 🚧
Even with the table improvements in this release, there’s more in store. We’re working on styling for individual cells, sorting, inserting arbitrary Rio components into cells, and much more.
Our documentation is also getting a full revamp. We've invested time in enhancing the API docs, and now it’s time to bring the rest of the docs up to speed with improved navigation, more how-tos, and examples for common tasks.
Finally, custom HTML components are still in development. Much of the groundwork is in place, and we’re actively shaping the public API.
Install 🛠️
Get it from PyPI: pip install --upgrade rio-ui
🌊