| Crates.io | molten_sparks |
| lib.rs | molten_sparks |
| version | 0.1.0 |
| created_at | 2025-12-14 18:45:40.424369+00 |
| updated_at | 2025-12-14 18:45:40.424369+00 |
| description | Beautiful TUI components for Cauldron 🎇 |
| homepage | https://molten.dev |
| repository | https://github.com/moltenlabs/molten-sparks |
| max_upload_size | |
| id | 1984923 |
| size | 62,955 |
Beautiful TUI components for building terminal interfaces.
Components • Installation • Usage • Ecosystem
Sparks is the Rust equivalent of bubbles from Charmbracelet. It provides beautiful, ready-to-use TUI components that work standalone or with the Cauldron framework.
🔄 SpinnerAnimated loading indicators with multiple styles.
|
📊 ProgressBeautiful progress bars.
|
✏️ TextInputFeature-rich text input fields.
|
📋 ListScrollable selection lists.
|
📜 ViewportScrollable content areas.
|
📑 TableData tables with selection.
|
🗂️ TabsTab navigation component.
|
|
cargo add sparks
Or add to your Cargo.toml:
[dependencies]
sparks = "0.1"
use sparks::SpinnerStyle;
SpinnerStyle::Dots // ⠋ ⠙ ⠹ ⠸ ⠼ ⠴ ⠦ ⠧ ⠇ ⠏
SpinnerStyle::Line // | / - \
SpinnerStyle::Arrow // ← ↖ ↑ ↗ → ↘ ↓ ↙
SpinnerStyle::Circle // ◐ ◓ ◑ ◒
SpinnerStyle::Moon // 🌑 🌒 🌓 🌔 🌕 🌖 🌗 🌘
SpinnerStyle::Fire // 🔥 🔥 ✨ 🔥
use sparks::ProgressStyle;
ProgressStyle::BLOCK // ████████░░░░
ProgressStyle::CLASSIC // [========---]
ProgressStyle::THIN // ━━━━━━━━────
ProgressStyle::CIRCLE // ●●●●●●○○○○○○
Sparks components work seamlessly with the Cauldron TUI framework:
use cauldron::{Model, Command};
use sparks::{Spinner, SpinnerStyle};
struct LoadingApp {
spinner: Spinner,
}
impl Model for LoadingApp {
type Message = ();
fn update(&mut self, _: ()) -> Command<()> {
self.spinner.tick();
Command::none()
}
fn view(&self) -> String {
self.spinner.view()
}
}
Sparks is part of the Molten Labs open source ecosystem:
| Crate | Description |
|---|---|
| molten_brand | Design tokens & colors |
| glyphs | ANSI escape sequences |
| lacquer | Terminal styling |
| cauldron | TUI framework |
| sparks | TUI components (you are here) |
| rune | Shell glamour |
| ember | Markdown renderer |
| smelt | Pretty logging |
Like sparks flying from the forge, these components are the bright, energetic building blocks that bring your terminal interfaces to life. 🎇
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Licensed under either of:
at your option.
Built with 🎇 by Molten Labs