scrin-widgets 0.1.0

Plug-and-play Ratatui widgets and Aisling terminal effects for Scrin TUIs.
Documentation
# scrin-widgets

`scrin-widgets` is a plug-and-play Rust widget library for building Scrin-style TUIs with Ratatui. It ships animated Aisling effects, ambient glyph fields, glowing gauges, and signal panels that can be dropped into a normal Ratatui app.

## Install

From this repo:

```toml
[dependencies]
scrin-widgets = { path = "." }
```

Once published to crates.io:

```toml
[dependencies]
scrin-widgets = "0.1"
```

## Quick Use

```rust
use ratatui::{widgets::{Block, Paragraph, Widget}, Frame};
use scrin_widgets::{AislingExt, GlyphRain, NebulaGauge, SignalPanel};

fn draw(frame: &mut Frame, tick: u64) {
    let area = frame.area();

    frame.render_widget(
        Paragraph::new("any Ratatui widget can shimmer")
            .block(Block::bordered().title("Aisling"))
            .aisling()
            .tick(tick),
        area,
    );
}
```

## Included Widgets

`Aisling<W>` wraps any Ratatui `Widget` and applies animated shimmer, scanline, and edge-glow effects after the widget renders.

`GlyphRain` renders a deterministic matrix-like field for backgrounds and data streams.

`NebulaGauge` renders a glowing progress meter with a flowing fill.

`SignalPanel` renders a compact status panel with animated signal bars.

## Examples

Run a static preview:

```sh
cargo run --example basic
```

Run the animated showcase:

```sh
cargo run --example showcase
```

Press `q` or `Esc` to exit the animated showcase.