DEV Community

Cover image for RazorConsole.Htop: a cross-platform, mouse-aware htop-style process manager with RazorConsole and .NET Native AOT
Xiaoyun Zhang
Xiaoyun Zhang

Posted on

RazorConsole.Htop: a cross-platform, mouse-aware htop-style process manager with RazorConsole and .NET Native AOT

Motivation

I wanted a lightweight process manager TUI so I can quickly terminate processes without leaving terminal.

The motivation was pretty simple:

  • Windows Task Manager often slow to open and use.
  • The original htop doesn’t support Windows.
  • The htop-like .NET CLI tools I found didn’t offer the mouse interactions I wanted.
  • The existing htop-like CLI tools that supports mouse interaction and xplat are either implemented in Rust or Go, but I want a .NET NativeAOT one.
  • Most importantly, My codex subscription is going to reset within 2 hours and yet still 59% usage left.

So I built RazorConsole.Htop. It supports:

  • Mouse-accessible filtering, grouping, pause, kill, and quit controls
  • Keyboard controls for the same operations
  • Self-contained .NET Native AOT binaries with no .NET runtime required

It uses RazorConsole to build TUI, System.Diagnostics.Process for process data and runs on Windows, macOS, and Linux.

Disclaimer: This was vibe-coded in about 5 minutes. I’ve tested it on Windows and macOS, but the Linux build has not been tested yet. Bug reports and feedback are very welcome.

Top comments (0)