Are We Embedded Yet? #1
This series is meant to document and promote the joint effort of making ratatui truly portable.
Update: no_std ratatui
Backend::Error
merged!
One of the blockers for no_std ratatui was the explicit use of std::io::Error
in Backend
(and
by extension, in Terminal
as well).
Now, Backend
implementations must define an associated Error
type.
Built-in backends will still use std::io::Error
, but third-party ones
like mousefood
can now use a different error type - which will enable a proper no_std
compatibility!
I'm actually working on a follow-up PR and ran into a pretty interesting issue, so if anyone reading this has ideas, feel free to jump in and comment.
As for the layout cache problem I mentioned in the last post -
since there's no great solution, the decision for now
is to simply not provide a cache in no_std
mode.
When this is merged, the last things left would be just few minor tweaks and adding std
feature flag.
We are one step closer to no_std ratatui.
██████████████████░░ 90%
Update: mousefood
Mousefood recently got italic modifier support as well as readme section about bold/italic fonts that also points out some limitations. Additionally, v0.2.1 patch was released that mainly targeted some inaccuracies in the docs.
Bold and italic modifiers in mousefood, italic will be available with the next release.
The development of mousefood may be a bit slower right now,
as I'm focusing on finalizing no_std
support in Ratatui -
but I'm still making sure to work on it regularly.
If you'd like to help out, feel free to reach out!
Full changelog of v0.2.1:
🚜 Refactor
- (examples) Remove unnecessary
extern crate
from simulator example
📚 Documentation
- (readme) Fix simulator code snippet
⚙️ Miscellaneous Tasks
- (examples) Configure simulator example in Cargo.toml
- Update list of excluded paths in Cargo.toml
soft_ratatui
Software rendering backend for ratatui. No GPU required. TUI everywhere.
Another new Ratatui backend just dropped - soft_ratatui by @gold-silver-copper, the creator of egui_ratatui. The crate uses tiny-skia to render efficiently directly to a window, ditching the terminal emulator completely. This allows for much higher frame rates out of the box (up to 200 FPS). It will be especially useful for TUI games or interactive tools where smooth performance really matters!
Soft_ratatui is under heavy development and I was told that it will eventually move away from tiny-skia in favor of a custom lightweight renderer.

colors_rgb running at over 140 FPS, "s" in "fps" gets cut off as the example doesn't expect that many digits!
Thanks!
Huge thanks for the response to the last post - it got way more attention than I expected, and even made its way into This Week in Rust #596 and The Embedded Rustacean #44. Thanks to everyone who helped spread Ratatui even further!