whatisgithub

What is emacs-workspace-hud?

nohzafk/emacs-workspace-hud — explained in plain English

Analysis updated 2026-06-24

17Emacs LispAudience · developerComplexity · 3/5Setup · hard

In one sentence

An Emacs extension that adds a floating status card in the top-right corner showing your Git branch, uncommitted files, language server status, and code errors, always visible while you code, without running any commands.

Mindmap

mindmap
  root((emacs-workspace-hud))
    What it does
      Floating status card
      Top-right Emacs corner
      Auto-shows in Git projects
    Status Shown
      Git branch and sync state
      Uncommitted file count
      Language server health
      Errors and warnings
    Tech
      Emacs Lisp extension
      Rust and WebAssembly UI
      Embedded web view
    Setup
      Rust and wasm-pack needed
      Emacs 30 recommended
      No prebuilt binaries
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

See your Git branch, commits ahead/behind the remote, and unstaged file count at a glance without running git status.

USE CASE 2

Monitor language server connection health and error/warning counts without switching to a separate Emacs buffer.

USE CASE 3

Auto-show the HUD when working in Git-tracked projects and auto-hide it in non-code buffers like help pages.

USE CASE 4

Extend the HUD with custom sections from your own Emacs packages using the built-in extension API.

What is it built with?

Emacs LispRustWebAssemblywasm-pack

How does it compare?

nohzafk/emacs-workspace-hudjxs/editorconfig-emacsemacs-evil/evil
Stars173,763
LanguageEmacs LispEmacs LispEmacs Lisp
Last pushed2017-09-12
MaintenanceDormant
Setup difficultyhardeasyeasy
Complexity3/52/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

No prebuilt binaries, must have Rust and wasm-pack installed and compile the WebAssembly UI locally before the extension will load in Emacs.

License terms are not mentioned in the repository description.

So what is it?

Emacs Workspace HUD is an extension for the Emacs text editor that adds a floating status card anchored to the top-right corner of the editor window. Rather than replacing Emacs's existing status bar, it provides an at-a-glance summary of the things most relevant while coding in a project: which Git branch you are on, whether your local branch is ahead or behind the remote, how many files have uncommitted changes, whether your language server is connected, and how many errors or warnings are present in the current code. The panel appears automatically when you open a file inside a Git-tracked project and hides itself when you switch to non-code buffers such as help pages or message logs. You can also toggle it manually with a keyboard shortcut. The auto-visibility behavior is customizable through a standard Emacs settings interface, and additional sections can be contributed by other packages through an extension API. The floating card itself is built in Rust and compiled to WebAssembly, then rendered inside a special embedded web view that some Emacs builds support. This approach lets the card have its own visual style independent of the rest of Emacs. Building the UI requires a Rust toolchain and a tool called wasm-pack, and no prebuilt binaries are distributed. Installation is more involved than a typical Emacs package because the WebAssembly UI must be compiled locally. There are two routes: a declaration-based approach using a built-in Emacs 30 feature, or a manual clone followed by a build step. Either way, the process fetches a bundled submodule and compiles the Rust code into a web-compatible binary. This is aimed at Emacs users who want an ambient, always-visible project status summary without opening separate windows or running status commands manually.

Copy-paste prompts

Prompt 1
Walk me through building the emacs-workspace-hud WebAssembly UI from source using Rust and wasm-pack on macOS, then loading it in Emacs 30.
Prompt 2
Write an Emacs Lisp snippet that registers a custom section with the emacs-workspace-hud extension API to show the active Python virtual environment name in the status card.
Prompt 3
How do I configure emacs-workspace-hud so the HUD only appears in python-mode and rust-mode, and stays hidden in org-mode and dired?
Prompt 4
Show me the use-package or package-vc-install declaration to install emacs-workspace-hud using the Emacs 30 built-in package system.

Frequently asked questions

What is emacs-workspace-hud?

An Emacs extension that adds a floating status card in the top-right corner showing your Git branch, uncommitted files, language server status, and code errors, always visible while you code, without running any commands.

What language is emacs-workspace-hud written in?

Mainly Emacs Lisp. The stack also includes Emacs Lisp, Rust, WebAssembly.

What license does emacs-workspace-hud use?

License terms are not mentioned in the repository description.

How hard is emacs-workspace-hud to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is emacs-workspace-hud for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.