Skip to main content

A high-performance, aesthetically pleasing Matrix rain TUI with horror elements.

Project description

QMATRIX

License Python Platform

QMatrix is not just another Matrix rain script. It is a high-performance, precision-tuned TUI engine designed to replicate the authentic "Digital Rain" aesthetic of the original 1999 masterpiece, infused with modern "horror" glitch mechanics and premium terminal visuals.

Crafted by Rex Ackermann


⚡ Features

🟢 Matrix Aesthetic

  • The Wall of Code: Optimized for high-density rendering (Density=1), creating a solid curtain of raining data.
  • Precision Gradient: A bespoke 4-stage color engine:
    1. Head: Blinding White lead characters.
    2. Body: A vibrant, alternating mix of Sushi Green (#86ab48) and Neon Bright Green.
    3. Tail: Deep Green fade-out.
  • True Physics: Quotes don't just fade; they physically slide down the screen like heavy blocks of data.
  • Katakana Glyphs: Full support for half-width Katakana, achieving the iconic "Matrix" look.

👻 Horror & Glitch Mechanics

  • Stationary Persistence: Quotes type out, freeze in mid-air, and then drop or vanish.
  • Hybrid Logic:
    • 90%: Quotes slide down ("Rain").
    • 10%: Quotes glitch and vanish instantly ("Ghost in the Shell").
  • Subliminal Corruption: Rare chance for text to shatter, flip, or invert during the fall.

🚀 Production Ready

  • Crash-Proof: Robust signal handling (Ctrl+C safe).
  • Clean Exit: Leaves your terminal spotless on quit.
  • Performance: stdscr.timeout based loop for smooth 20FPS rendering without CPU hogging.
  • Terminal Optimization: Special color overrides for Kitty and Ghostty terminals.

📦 Installation

Since this is a production-grade Python package, you can install it directly from PyPI:

pip install qmatrix

Or build from source:

git clone https://github.com/rexackermann/qmatrix.git
cd qmatrix
pip install .

🎮 Usage

Run it simply by typing:

qmatrix

Premium Flags

Customize the simulation to your exact mood:

Flag Description Default
-d, --density Spacing between columns (1 = Max Density) 1
--tail-min Minimum length of rain trails 25
--tail-max Maximum length of rain trails 50
-m, --mix Ratio of Quotes vs Normal Rain 0.15
--horror Enable subliminal glitch effects False
--sexy Force high-fidelity colors for modern terminals False
--fps Target Frame Rate (Smoothness) 60 (Sexy) / 20
--transparent Use terminal's native background (Images/Wallpaper) False
--bg-color Set solid background color (e.g., red, blue) black

Example Production Run:

qmatrix --density 1 --tail-min 30 --mix 0.2 --horror --transparent

🛠 Configuration

QMatrix supports XDG configuration. You can place a persistent config file at: ~/.config/qmatrix/config.json

{
    "speed": 0.2,
    "color": "green",
    "density": 1,
    "tail_min": 30,
    "horror": true
}

📜 License

Distributed under the MIT License. See LICENSE for more information.


💡 Credits

Special thanks to the Tmatrix project for the original inspiration and physics concepts.

"The Matrix is everywhere. It is all around us."

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qmatrix-1.2.5.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qmatrix-1.2.5-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

Details for the file qmatrix-1.2.5.tar.gz.

File metadata

  • Download URL: qmatrix-1.2.5.tar.gz
  • Upload date:
  • Size: 12.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for qmatrix-1.2.5.tar.gz
Algorithm Hash digest
SHA256 0ef6bd003ff1f8b2c18ad3cba719a8b8ceed79f665749efb41e81e0bd6b2ca33
MD5 1ba277f42ce8ac9e72e96c164ce2c41c
BLAKE2b-256 ba6607933a4a8ce67acb3027cfd6ed3bf2fd4225494f2bc1bc88a62b24c7e851

See more details on using hashes here.

File details

Details for the file qmatrix-1.2.5-py3-none-any.whl.

File metadata

  • Download URL: qmatrix-1.2.5-py3-none-any.whl
  • Upload date:
  • Size: 12.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for qmatrix-1.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 eb5d52c97dce654d93dd567275b8cfbeaaa0648f86bbed875cba424c999e110d
MD5 d67a451de9da50004fbdbc15502cd53b
BLAKE2b-256 71d4ea4ca638fcadb680b6333cb241dced99a6f646ab7b1ff73336c4d748afb3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page