A cross-platform package to replace curses (mouse/keyboard input & text colours/positioning) and create ASCII animations
81
{
"context": "This evaluation assesses the engineer's ability to use asciimatics' double-buffered screen rendering system to create a flicker-free animated terminal display. The focus is on proper use of the Screen API for buffer management and display updates.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Screen initialization",
"description": "Uses Screen.open() or Screen.wrapper() to properly initialize and manage the screen context with automatic cleanup",
"max_score": 15
},
{
"name": "Buffer clearing",
"description": "Calls clear_buffer() at the start to initialize the screen buffer with appropriate foreground, attribute, and background color parameters",
"max_score": 15
},
{
"name": "Text positioning",
"description": "Uses print_at() method to correctly position all text elements (counter, status, progress bar) at the specified coordinates with appropriate color and attribute parameters",
"max_score": 25
},
{
"name": "Buffer refresh",
"description": "Calls refresh() after each complete frame update to flush the double-buffer to the physical screen, ensuring all changes are applied atomically",
"max_score": 25
},
{
"name": "Update sequence",
"description": "Follows the correct double-buffering pattern: update all display elements in the buffer first, then call refresh() once per frame (not after each individual print_at() call)",
"max_score": 20
}
]
}Install with Tessl CLI
npx tessl i tessl/pypi-asciimaticsdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10