Summer Code Jam 2021

Below is the list of approved frameworks that you can use for the code jam. Please take note of what frameworks are available for which platform. Please work with your team to choose a library that everyone can develop on, whether it's cross platform or something you can use WSL or a Virtual Machine for.

Urwid

  • Documentation Link
  • Supports: Linux, Mac, other unix-like OS
  • Somewhat in-depth tutorial
  • Uses widgets in a fairly straight forward design
  • Docs include tutorials of both functional and class-based examples
urwid

Curses

  • Documentation Link
  • Supports: Linux and other unix-like OS
  • Part of the standard library
  • Extensive how-to guide
  • Very basic, more effort to get working/looking good
  • To supplement curses the following libraries are approved, although no guarantees are made for stability.
    • Unicurses - a wrapper for Python 3.x that provides a unified set of Curses functions of all platforms.
    • Nurses - a combination of curses and numpy, made by our very own salt-die
curses

Blessed

  • Documentation Link
  • Supports: Linux, Mac, and Windows
  • Sits on top of curses to add more pythonic bindings
  • Doesn't provide any widgets or layouts
blessed

Rich

  • Documentation Link
  • Supports: Linux, Mac, and Windows
  • Documentation is good and overall is very OOP focused
  • Robust with many features and example snippets
  • To supplement Rich the following library is approved, although no guarantees are made for stability.
    • Textual - a TUI framework using Rich as the render.
      It is still under active development, is only available on Mac/Linux, and is not stable yet.
rich

Asciimatics

  • Documentation Link
  • Supports: Linux, Mac, and Windows
  • Documentation is well structured and straightforward to navigate
asciimatics

Python Prompt Toolkit

python prompt toolkit