
Rattles Terminal Spinners
You're building a CLI app in Rust and need a loading spinner. Rattles gives you that with zero dependencies and a clever stateless design,just call `current_frame()` in your render loop, no lifecycle management needed. It ships with preset collections (braille dots, arrows, emoji) and works in `no_std` environments if you switch to tick-based or index-based driving. The `rattle!` macro lets you define custom spinners at compile time. It integrates cleanly with ratatui since you can pass the spinner by reference anywhere without wrapping it in `Arc<Mutex>`. The stateless-by-default approach is refreshing for something this simple, and the fallback options make it work even on embedded targets.
- skills.sh installs
- 392
- GitHub stars
- 26
- last updated
- Jun 3, 2026
Install
$ npx -y skills add aradotso/trending-skills --skill rattles-terminal-spinners --agent claude-codeInstalls into .claude/skills of the current project.
Files
Rattles Terminal Spinners
Skill by ara.so — Daily 2026 Skills collection.
Rattles is a minimal, zero-dependency Rust library for terminal spinners. It has no runtime or lifecycle — spinners are constructed directly in render loops with negligible cost. Supports no_std environments.
Installation
# Cargo.toml
[dependencies]
rattles = "0.1" # with std (default)
# no_std
rattles = { version = "0.1", default-features = false }
Or via CLI:
cargo add rattles
# no_std variant
cargo add rattles --no-default-features
Core Concepts
- Rattler: a spinner definition (frames + interval). Stateless and cheap to construct.
- TickedRattler: stateful wrapper for tick-based driving (required in
no_std). - Presets: built-in spinners organized by category.
rattle!macro: define custom spinners at compile time.
Basic Usage (std)
use std::{io::Write, time::Duration};
use rattles::presets::prelude as presets;
fn main() {
let rattle = presets::dots();
Sponsors
Details
- Repository
- github.com/aradotso/trending-skills
- Category
- CLI & Terminal
- First seen
- Jun 3, 2026
More from aradotso/trending-skills
All 251- Progressive Blur Header Swiftui390
- Bouncer Feed Filter382
- Puremac Macos Cleaner380
- Codeburn Claude Cost Dashboard379
- Isolet Widget Isolation371
- Talk Normal Llm Prompt371
- Yourvpndead Vpn Detection364
- Moss Tts Nano Speech361
- Aris Autonomous Ml Research360
- Webphysics Avbd Engine356
- Autoteam Chatgpt Rotation351
- Anything Analyzer Cdp344
- Capso Screenshot Macos340
- Acgti Anime Persona Quiz338
- Cli To Js Api Wrapper336
- Html Ppt Skill336
- Ntwarden Windows Analysis Toolkit336
- Geoflow Content Automation335
- Dflash Mlx Speculative Decoding331
- Palantir For Family Trips325
- Wterm Web Terminal325
- Anubis Android App Manager324
- Nothing Ever Happens Polymarket Bot324
- Openduck Distributed Duckdb321