or run

tessl search
Log in

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
pypipkg:pypi/textual@6.1.x
tile.json

tessl/pypi-textual

tessl install tessl/pypi-textual@6.1.0

Modern Text User Interface framework for building cross-platform terminal and web applications with Python

Agent Success

Agent success rate when using this tile

93%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.18x

Baseline

Agent success rate without this tile

79%

rubric.jsonevals/scenario-4/

{
  "context": "This criteria evaluates how well the engineer uses Textual's file monitoring capabilities to build a reactive TUI application. The focus is on proper usage of FileMonitor, async callback handling, and integration with the Textual app lifecycle.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "FileMonitor instantiation",
      "description": "Uses the FileMonitor class from textual.file_monitor module with proper initialization, including a list/sequence of Path objects and a callback function",
      "max_score": 20
    },
    {
      "name": "File path handling",
      "description": "Correctly converts the input file path to a Path object and passes it to FileMonitor in the expected format (as a sequence of Path objects)",
      "max_score": 15
    },
    {
      "name": "Callback implementation",
      "description": "Implements a callback function/method that is invoked when file changes are detected, properly reading and updating the displayed content",
      "max_score": 20
    },
    {
      "name": "App lifecycle integration",
      "description": "Sets up the FileMonitor during the appropriate lifecycle phase (e.g., on_mount) to ensure monitoring begins when the app is ready",
      "max_score": 15
    },
    {
      "name": "UI widgets composition",
      "description": "Uses appropriate Textual widgets (such as Static, Label, or TextArea) to display file content and status information in the compose method or through mount calls",
      "max_score": 15
    },
    {
      "name": "Reactive state management",
      "description": "Uses reactive attributes (Reactive descriptor) to track state changes such as change count or last update time, triggering automatic UI updates",
      "max_score": 10
    },
    {
      "name": "Key binding",
      "description": "Implements key bindings using the BINDINGS class attribute or Binding objects to handle the quit action when 'q' is pressed",
      "max_score": 5
    }
  ]
}