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.3.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.3-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qmatrix-1.2.3.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.3.tar.gz
Algorithm Hash digest
SHA256 f4aa8a699d29237c18c346c8c82934fd3e66e76e7258a192fb3ca77aad27d3ea
MD5 057b92a9e6277bc8368ac9cb4259041d
BLAKE2b-256 5b4a52b681e60d298cf63b50e5d81ff8dfaecd8f24c807d646b783b4c9367def

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qmatrix-1.2.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7707c29807fc48fe7a37bb01cec21574c040858a7f509307b6cdc9722798256d
MD5 3e1b9f96255fa084843ae92c7dc6b564
BLAKE2b-256 ef1b7d4abfce646a0d4d8867d5a2cade81421142e3fc95e450aba25437d7d1fe

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