| |
 _ __   _   _ | |_  ___
| '_ \ | | | || __|/ _ \
| |_) || |_| || |_|  __/
| .__/  \__, | \__|\___|
| |      __/ |
|_|     |___/      0.4.7

-- chicks dig dudes with terminals (c) @samfoo

What is pyte?

What is pyte? It’s an in memory VTXXX-compatible terminal emulator. XXX stands for a series video terminals, developed by DEC between 1970 and 1995. The first, and probably the most famous one, was VT100 terminal, which is now a de-facto standard for all virtual terminal emulators. pyte follows the suit.

So, why would one need a terminal emulator library?

  • To screen scrape terminal apps, for example htop or aptitude.
  • To write cross platform terminal emulators; either with a graphical (xterm, rxvt) or a web interface, like AjaxTerm.
  • To have fun, hacking on the ancient, poorly documented technologies.

Note: pyte started as a fork of vt102, which is an incomplete pure Python implementation of VT100 terminal.


If you have setuptools you can use easy_install -U pyte. Otherwise, you can download the source from GitHub and run python setup.py install.

Similar projects

pyte is not alone in the weird world of terminal emulator libraries, here’s a few other options worth checking out: Termemulator, pyqonsole, webtty AjaxTerm and of course vt102.

pyte users

Believe it or not, there’re projects which actually need a terminal emulator library, not many of them use pyte though:

  • Selectel – hey, we wrote this thing :)
  • Ajenti – easy to use weadmin panel for Linux and BSD uses pyte for its terminal plugin.
  • Neutron IDE – personal cloud IDE.

Show me the code!

Head over to our brief Tutorial or, if you’re feeling brave, dive right into the API referencepyte also has a couple of minimal examples in the examples/ directory.

Table Of Contents

Next topic


This Page