Status bar and widgets

Open
#2,501 0 comments 21 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
rust
Domain
design, desktop

Research direction

No implementation files, tests, or entry points are named. Start by locating the existing prompt and status-bar UI, then define the scope of a language-agnostic widget/plugin specification; done should include an agreed design and a clear path for displaying and updating widgets.

Written by the indexing model from the issue text.

Description

enhancement triaged
Describe the solution you'd like?

(Related to #96, but capturing the idea separately to not conflate things.)

Along the same line as Warp's re-imagining of commands as blocks and a separate input area, I'd love to see customizable status bar "widgets" as an alternative UX to putting even more information into the prompt string. Ideally there'd be a language-agnostic plugin spec to support advanced use cases.

Some limitations of prompt strings:

  • Just a single string; keeping it compact while showing enough context can get cumbersome
  • Have no ability to update periodically (ex: switching git branches in another terminal isn't reflected until running a new command / no live-updating system metrics)
  • Are limited to text (ex: doing any sort of graph-drawing for system metrics relies on text glyphs / iconography limited to glyphs and emoji)

iTerm supports these in text form: https://iterm2.com/documentation-status-bar.html
And has an API that the community has built things on:

My particular basic use case is showing AWS_PROFILE / AWS_VAULT / other project-specific env vars always in the status bar (setup is basically this: https://medium.com/@msvechla/customizing-the-new-iterm2-status-bar-to-your-needs-252eee06bf39), but there's a lot of opportunity for innovation here on more interesting and dynamic cases. Some ideas:

  • Poll CI progress + success for the current branch (Have my tests passed yet? Elapsed time + red/green success -> click the widget to go to the full build.)
  • Show status of deployed services
  • Approval status of the PR for the current branch
  • New updates available in Homebrew or other package managers
  • Many more things from Starship and others: https://starship.rs/config/#prompt
Is your feature request related to a problem? Please describe.

No response

Additional context

No response

Dominant language
Rust
Stars
65.1k
Forks
5.6k
PR merge metrics
PR metrics pending

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from warpdotdev/warp

All issues in warpdotdev/warp

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.