Skip to main content

Library for TUI programs on basis of curses

Project description


A python library/framework for TUI application on the basis of the curses package.

Example use

Here’s a very simple example of how to use the cursedspace package:

#!/usr/bin/env python3

from cursedspace import Application, Key, Panel

class DemoApplication(Application):
    def __init__(self):
        self.panel = None

    def main(self):
        self.panel = Panel(self)

        while True:

            key = self.read_key()

            if key == Key.RESIZE:
            elif key in [Key.ESCAPE, "q", "^C"]:

    def resize(self):
        height, width = self.size()
        self.panel.resize(height, width)


  • Application is the main application class and provides boilerplate initialisations
  • Panel is a basic panel with support for borders and key handling in the context of an Application
  • LineInput is a panel with very basic editing support.
  • Key provides a convenient wrapper around curses’ key system. It can be used standalone even when you don’t want to use Application or Panel.

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

cursedspace-0.1.0.tar.gz (10.2 kB view hashes)

Uploaded source

Built Distribution

cursedspace-0.1.0-py3-none-any.whl (11.9 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page