High-performance Rust port of Python's popular Rich library.
Beautiful terminal formatting for Rust applications.

[!IMPORTANT] This project is currently in Alpha. APIs are subject to change, and some features may be incomplete.
Fast-Rich empowers your terminal applications with rich text, tables, syntax highlighting, markdown rendering, and more, all with an idiomatic and safe Rust API.
Feature Showcase
Experience the library's breadth with our automated demonstration:

🎨 Professional Assets
📊 Beautiful Tables
Unicode borders, automatic column alignment, and smart wrapping.

💻 Syntax Highlighting
Full support for various themes and languages via syntect.

⏳ Progress Bars
Multi-threaded tracking with spinners, ETAs, and customizable columns.

📈 Live Dashboards
Flicker-free, auto-updating content for real-time monitoring.

🌳 Structural Views
Render hierarchical data and layouts with ease.
Key Features
- Rich Text: Use styled text with bold, italic, underline, and RGB/TrueColor support.
- Markdown Rendering: Render headers, lists, and code blocks directly in your terminal.
- Beautiful Logging: Structured, colored, and timestamped logging compatible with the
logcrate.
- Extensible API: Create your own renderables and custom style themes.
Installation
Add fast-rich to your Cargo.toml:
[]
= "0.3.2"
To enable all features (including Syntax Highlighting and Markdown, which bring in extra dependencies):
[]
= { = "0.3.2", = ["full"] }
Or pick specific features:
[]
= { = "0.3.2", = ["syntax", "markdown", "logging"] }
Quick Start
use *;
📚 Documentation
Detailed guides and API references are available at our official documentation site:
👉 mohammad-albarham.github.io/fast-rich
Essential Resources
- Getting Started: Installation, first steps, and core concepts.
- User Guides: Deep dives into Tables, Progress Bars, Live Display, and more.
- API Reference: Comprehensive technical documentation on
docs.rs. - Examples: Real-world code samples for every feature.
Examples
Run the included examples to see features in action:
# Core features
# Print macros (drop-in replacement for std::print!)
# Progress bars and spinners
# Other features
Comparisons
| Feature | Python Rich | Fast-Rich |
|---|---|---|
| Rich Text | ✅ | ✅ |
| Tables | ✅ | ✅ |
| Progress | ✅ | ✅ |
| Live Display | ✅ | ✅ |
| Syntax Highlighting | ✅ | ✅ |
| Markdown | ✅ | ✅ |
| Layouts | ✅ | ✅ |
| Tracebacks | ✅ | ✅ |
| Inspect | ✅ | ✅ |
Contributing
Contributions are welcome! Please check out CONTRIBUTING.md for guidelines on how to get started.
Contributors
Thanks to everyone who has contributed to Fast-Rich! 🙏
Special thanks to:
- Everyone who has opened issues to report bugs or request features
- All pull request contributors who helped improve the codebase
- The Python Rich team for the original inspiration
License
MIT or Apache-2.0