Skip to content


Repository files navigation


Matrix like effect in your terminal




☁️ Overview

CMatrix is based on the screensaver from The Matrix website. It shows text flying in and out in a terminal like as seen in "The Matrix" movie. It can scroll lines all at the same rate or asynchronously and at a user-defined speed.

CMAtrix is inspired from 'The Matrix' movie. If you haven’t seen this movie and you are a fan of computers or sci-fi in general, go see this movie!!!

Disclaimer : We are in no way affiliated in any way with the movie "The Matrix", "Warner Bros" nor any of its affiliates in any way, just fans.


📂 Build Dependencies

You'll probably need a decent ncurses library to get this to work. On Windows, using mingw-w64-ncurses is recommended (PDCurses will also work, but it does not support colors or bold text).

🔹 For Linux

Run this command to check the version of ncurses.

ldconfig -p | grep ncurses

If you get no output then you need to install ncurses. Click below to install ncurses in Linux.


💾 Building and installing cmatrix

To install cmatrix, Clone this repo in your local system and use either of the following methods from within the cmatrix directory.

🔹 Using configure (recommended for most linux/mingw users)

autoreconf -i  # skip if using released tarball
make install

🔹 Using CMake

Here we also show an out-of-source build in the sub directory "build". (Doesn't work on Windows, for now).

mkdir -p build
cd build
# to install to "/usr/local"
cmake ..
# OR 
# to install to "/usr"
make install


📑 Usage

After you have installed cmatrix just type the command cmatrix to run it :)


Run with different arguments to get different effects.

cmatrix [-abBflohnsmVx] [-u update] [-C color]


cmatrix -ba -u 2 -C red

For more options and help run cmatrix -h
Read Manual Page by running command man cmatrix

To get the program to look most like the movie, use cmatrix -lba To get the program to look most like the Win/Mac screensaver, use cmatrix -ol

📍 Note: cmatrix is probably not particularly portable or efficient, but it won't hog too much CPU time.


📷 Captures

🔹 Screenshots

cmatrix screenshot

🔹 Screencasts

cmatrix screencast


⚡ Maintainers

👥 Our Contributors

🔸 Thanks to

  • Chris Allegretta for writing cmatrix up in a fortnight and giving us the responsibility to further improve it.
  • Krisjon Hanson and Bjoern Ganslandt for helping with bold support and Bjoern again for the cursor removal code, helping with the -u and -l modes/flags, and Makefile improvements.
  • Adam Gurno for multi-color support.
  • Garrick West for debian consolefont dir support.
  • Nemo for design thoughts and continuous help and support.
  • John Donahue for helping with transparent term support
  • Ben Esacove for Redhat 6 compatibility w/matrix.psf.gz
  • jwz for the xmatrix module to xscreensaver at
  • Chris Allegretta's girlfriend Amy for not killing him when he stayed up till 3 AM writing code.
  • Sumit Kumar Soni for beautifying the README.
  • The makers of the Matrix for one kickass movie!
  • ➤ Everyone who has sent (and who will send) us and Chris mails regarding bugs, comments, patches or just a simple hello.
  • ➤ Everyone who has contributed to the project by opening issues and PRs on the github repository.


📖 Contribution Guide

If you have any suggestions/flames/patches to send, please feel free to:

  • Open issues and if possible label them, so that it is easy to categorise features, bugs etc.
  • If you solved some problems or made some valuable changes, Please open a Pull Request on Github.
  • See for more details.


📄 License

This software is provided under the GNU GPL v3. View License