rusty-rain

Crates.iorusty-rain
lib.rsrusty-rain
version0.5.0
created_at2021-02-20 14:47:11.87581+00
updated_at2025-08-17 02:28:00.545969+00
descriptionCross platform CMatrix like program.
homepage
repositoryhttps://github.com/cowboy8625/rusty-rain
max_upload_size
id358051
size215,579
Cowboy8625 (cowboy8625)

documentation

README


Matrix rain demo
Rusty Rain

crates.io last updated repo size issues lines of code license Discord Chat

Rusty Rain is a fast, cross-platform Matrix-style rain effect for your terminal, written in Rust.
Fully customizable: colors, characters, speed, direction β€” make it as chill or chaotic as you want.


πŸš€ Quick Install

Method Command
Cargo (stable) cargo install rusty-rain
Cargo (latest) cargo install --git https://github.com/cowboy8625/rusty-rain.git
eget eget cowboy8625/rusty-rain
Docker (build) docker build -t rusty-rain . && docker run --rm -it rusty-rain alpha-num -s
Docker (pull) docker run --rm -it ghcr.io/cowboy8625/rusty-rain:latest -c alpha-num -s
Debian Package curl -sSL https://raw.githubusercontent.com/cowboy8625/rusty-rain/master/install.sh | bash

🎯 Quick Start

rusty-rain

Default mode: green binary rain, classic Matrix look. Press ESC, Ctrl + C, or q to quit.


🎨 Examples

# Japanese characters, teal rain, white head, flowing left
rusty-rain -C 0,139,139 -H 255,255,255 -g jap -s -d left

# Emoji chaos
rusty-rain -g emojis -C red -H yellow -S 0,50

# Large letters in bright blue, rain up
rusty-rain -g large-letters -C blue -H white -d up

βš™οΈ Customization

Full CLI Options
Cross platform CMatrix like program.

Usage: rusty-rain [OPTIONS]

Options:
  -s, --shade


  -g, --group <GROUP>
          Set what kind of characters are printed as rain.
          OPTIONS:
              all            - This shows most of the Character Groups all at once.
              alphalow       - Lower Case Alphabet Characters
              alphaup        - Upper Case Alphabet Characters
              arrow          - Arrow Emojis or Fancy Characters
              bin            - All Ones and Zeros
              cards          - Playing Cards
              classic        - closer to what the default look is for cmatrix
              clock          - πŸ•‘
              crab           - πŸ¦€
              dominosh       - πŸ€½
              dominosv       - 🁫
              earth          - 🌎
              emojis         - This is just a bunch of random Emojis
              jap            - Japanese Characters
              large-letters  - Cool Looking Large Letters
              moon           - πŸŒ•
              num            - Good ol fashion Numbers
              numbered-balls - These are like pool balls
              numbered-cubes - These are like the pool balls but just cubes
              open-source    - Open Source icon emojis
              pglangs        - These are programming language icons emojis
              plants         - Plants of sorts
              shapes         - Squares and Circles of a few colors
              smile          - πŸ˜ƒ


          [default: bin]

  -C, --color <COLOR>
          Set color of Rain with color string name or tuple
          OPTIONS:
              white,
              red,
              blue,
              green,
              r,g,b


          [default: green]

  -H, --head <HEAD>
          Set the color of the first char in Rain.
          OPTIONS:
              white,
              red,
              blue,
              green,
              r,g,b,
              #RRGGBB


          [default: white]

  -d, --direction <DIRECTION>
          Set the direction of the Rain.
          Default is set to down/south
          OPTIONS:
              up or north,
              down or south,
              left or west,
              right or east


          [default: south]

  -S, --speed <SPEED>
          [default: 0,200]

  -D, --display-group
          Display Char Group

  -h, --help
          Print help (see a summary with '-h')

  -V, --version
          Print version
Config Options

[!NOTE] Things in config will override CLI options. This probably will change in the future.

# windows path %APPDATA%\\rusty-rain\\config.toml
# linux   path ~/.config/rusty-rain/config.toml
# mac    path ~/.config/rusty-rain/config.toml
speed = "0,200"
[groups.neovim]
range = [
  { start = 62319, end = 62320 },
]
width = 2

[groups.rust]
range = [
  { start = 59304, end = 59305 },
]
width = 2

πŸ›  Contributing

We welcome:

  • πŸ› Bug reports
  • πŸ’‘ Feature requests
  • πŸ”€ New character groups
  • πŸ§‘β€πŸ’» Code contributions

Open an issue or pull request β€” let’s make it rain together. 🀣


⭐ Star History

Star History Chart

πŸ“œ License

APACHE Β© cowboy8625

Commit count: 113

cargo fmt