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.3.0.tar.gz (13.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.3.0-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qmatrix-1.3.0.tar.gz
  • Upload date:
  • Size: 13.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.3.0.tar.gz
Algorithm Hash digest
SHA256 39fcc46c28c3e0db7192677c95e49bb26537de43b0a76007a9677504561d17a4
MD5 7169566f31d6a5c83fa7645fbd2c222e
BLAKE2b-256 4cc25665a73d14176a159236dd122d5cdb0db1e8dfd1ff9dfaf1e712d6ca5ff3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qmatrix-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 13.6 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.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 44934048bf312bd7873ccbcf4aee46a11de7c5d59ab66c63b86ef0835c6a0333
MD5 f559b89dbcd5c6d171b8a4d7372ecc4f
BLAKE2b-256 baa952c1ec4c1d362064bef015b9ff8b47a8d4d9b4b0ce89de195a4b7f7acaa4

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