rocketsplash-rt 0.2.1

Runtime library for loading and rendering Rocketsplash assets (.rst, .rsf)
Documentation
# rocketsplash-rt

[![Crates.io](https://img.shields.io/crates/v/rocketsplash-rt.svg)](https://crates.io/crates/rocketsplash-rt)
[![Documentation](https://docs.rs/rocketsplash-rt/badge.svg)](https://docs.rs/rocketsplash-rt)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

**rocketsplash-rt** is the runtime library for loading, managing, and rendering Rocketsplash assets. It enables Rust applications to easily display rich, colorful splash screens and banners in the terminal using the `.rst` and `.rsf` file formats. It supports splash-screen and large text font art.

## Features

- **Zero-config Loading**: Load splash screens and fonts with a single line of code.
- **Safe & Secure**: Strict validation of input files to prevent allocation attacks or malformed data.
- **ANSI Rendering**: High-performance rendering to standard ANSI escape sequences (TrueColor).
- **No Heavy Dependencies**: Designed to be lightweight and embeddable.

## Installation

```bash
cargo add rocketsplash-rt
```

## Usage

### Displaying a Splash Screen

```rust
use rocketsplash_rt::Splash;
use std::error::Error;

fn main() -> Result<(), Box<dyn Error>> {
    // Load a splash screen from a file
    let splash = Splash::load("assets/logo.rst")?;

    // Print it directly to stdout
    splash.print();

    Ok(())
}
```

### Rendering to a String

If you need to embed the output into another TUI framework or log message:

```rust
let output = splash.to_string();
println!("{}", output);
```

### Using Custom Fonts

```rust
use rocketsplash_rt::Font;

let font = Font::load("assets/custom-font.rsf")?;
let text = font.render("Hello World").to_string();
println!("{}", text);
```

## License

Copyright (c) 2026 - JAC. Licensed under the MIT license.