Skip to main content


Pygcurse (pronounced "pig curse") is a curses library emulator that runs on top of the Pygame framework. It provides an easy way to create text adventures, rougelikes, and console-style applications.

Al Sweigart

"We already have a curses module for Python."

Yes. But unfortunately, the curses module that comes with the Python standard library does not work on Windows. The excellent Console module from effbot provides curses-like features, but it only runs on Windows and not Mac/Linux. By using Pygame, Pygcurse is able to run on all platforms. Also, since this curses-like module is built on top of Pygame, your programs are not strictly limited strictly to text characters. You can use all the normal Pygame drawing and graphics functions, as well as any libraries made for Pygame.

Pygcurse provides several benefits over normal text-based stdio programs:

1. Color text and background.

2. The ability to move the cursor and print text anywhere in the console window.

3. The ability to make console apps that make use of the mouse.

4. The ability to have programs respond to individual key presses, instead of waiting for the user to type an entire string and press enter (as is the case with input()/raw_input()).

5. The ability to use any font and any character in those fonts.

6. Since the console window that Pygcurse uses is just a Pygame surface object, additional drawing and transformations can be applied to it. Multiple surfaces can also be used in the same program.

Pygcurse also provides some additional features that curses normally doesn't, such as tinting, shadows, textboxes, and line drawing functions. Pygcurse requires Pygame to be installed.

Pygame can be downloaded from Pygcurse can be used with either Python 2 or Python 3.



Home Page


Pygcurse 1 — 10 Sep, 2011 account Comments

  • Pydeco 2011-10-27 14:05:23

    Great library, indeed! It's exactly what I needed.