Skip to content

Render visual session dashboard in info() using UnicodePlots #7

@samtalki

Description

@samtalki

What

Enhance the info tool to optionally render a visual dashboard of session state using UnicodePlots — bar charts for variable sizes, sparklines for evaluation timing history, a summary view of all sessions.

Why

The current info() output is plain text. When working with multiple sessions, large datasets, or long-running analyses, a visual overview helps you understand what's going on at a glance — memory pressure, which session has the most state, how eval times are trending.

Ideas

Variable size bar chart

Variables in session 'default':
  df       DataFrame  ████████████████████  4.2 MB
  model    Chain      ██████████           2.1 MB
  x        Vector     ██                   0.4 MB
  result   Float64    ▏                    8 B

Multi-session overview

Sessions:
  default  ████████ worker 2  (3 vars, 6.7 MB, Revise ✓)
  test     ███      worker 3  (1 var,  0.4 MB, no Revise)
  bench    ██       worker 4  (2 vars, 0.2 MB, Revise ✓)

Eval timing sparkline

Recent eval times: ▁▂▁▁▃▇▁▁▂▁  (last 10 evals, max 2.3s)

Implementation notes

  • UnicodePlots would be an optional dependency — if not installed, fall back to plain text
  • The info tool already gathers variable info with types and sizes (get_worker_info)
  • Could add a format="visual" parameter to info(), or auto-detect when UnicodePlots is available
  • Timing history would need a small ring buffer added to SessionState

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions