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.8.tar.gz (12.9 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.8-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qmatrix-1.2.8.tar.gz
  • Upload date:
  • Size: 12.9 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.8.tar.gz
Algorithm Hash digest
SHA256 23bf429d86b709cb0d96dc984065786997838196b9704b8446de726eacedcd77
MD5 8e2171023166a5b093202b92984d6c8f
BLAKE2b-256 5592423612562d92458b4b841668a192f6029ea475e37b604178a3f261fa0753

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qmatrix-1.2.8-py3-none-any.whl
  • Upload date:
  • Size: 13.2 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 14c819637867bf54601ce07bc9ed1e97b208966335e762a7a59ad52408621af0
MD5 72b8585e2b4f0255523f7944e5c32a7f
BLAKE2b-256 575e937c65f5a8f707edac7e819fcf5879d52f9c93c67203c222c4edad83f516

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