neohtop
NeoHtop is a cross-platform desktop system monitor — a modern, themeable alternative to htop — built with a SvelteKit/TypeScript frontend and a Rust/Tauri backend. It offers real-time process monitoring with advanced search (including regex), filtering, sorting, and process management.
MITPermissive — free to use in commercial and proprietary software, with attribution.View license →
Production readiness
5/5- Actively maintainedCommits in the last 6 months
- No known vulnerabilitiesNo OSV advisories
- Clear, usable licenseMIT (permissive)
- Proven adoptionWidely used
- Has documentationDocumentation indexed
npm install neohtopOur analysis
A polished, cross-platform GUI system/process monitor (a graphical htop) built on Tauri, with the UI in SvelteKit and the system-data layer in Rust. It surfaces real-time CPU/memory and process info with searching, filtering, pinning, and process killing.
When to use neohtop
Use it when you want a visually pleasant desktop task manager that runs identically on macOS, Linux, and Windows, with regex/multi-term process search and the ability to kill or pin processes. Good for users who prefer a GUI over terminal tools but still want power-user filtering.
When not to
Skip it if you live in the terminal or work over SSH on headless servers — htop/btop/bottom are better there. It's also not a code library you'd integrate into your own app; it's an end-user application. For deep performance profiling or historical metrics/alerting, dedicated observability tools fit better.
Strengths
- Genuinely cross-platform via Tauri with small binaries and low overhead compared to Electron alternatives
- Modern, attractive UI with dark/light themes and column sorting
- Powerful search: comma-separated terms and full regex matching against name/command/PID
- Rust backend keeps system polling efficient and safe
- MIT-licensed, actively popular (9k+ stars), with a companion terminal CLI for headless use
Trade-offs
- Desktop GUI requires elevated privileges (sudo/pkexec) to inspect/kill privileged processes, which is awkward
- Not suited to remote/headless monitoring without the separate CLI project
- Feature set is intentionally narrow — no historical graphs, alerting, or disk/network deep dives
- Package-manager installs are community-maintained and unvetted by the project, leaving only GitHub Releases as official
Maturity
Mature and popular for a single-maintainer project, with broad distribution (Homebrew, AUR, Scoop, Fedora Terra, Solus) and an expanding ecosystem including a Go-based CLI. Built on stable, well-supported foundations (Tauri, SvelteKit, Rust); MIT-licensed and openly contributable.
Table of Contents
Why NeoHtop?
Read about the back story and motivation behind NeoHtop
Features
🚀 Real-time process monitoring
💻 CPU and Memory usage tracking
🎨 Beautiful, modern UI with dark/light themes
🔍 Advanced process search and filtering
📌 Pin important processes
🛠 Process management (kill processes)
🎯 Sort by any column
🔄 Auto-refresh system stats
Search Functionality
Search for processes by name, command, or PID. Use commas to search for multiple terms simultaneously. Regular expressions are supported for advanced filtering.
Examples:
arm, x86: Returns processes with "arm" or "x86" in the name or commandd$: Lists daemons (processes ending with 'd')^(\w+\.)+\w+$: Shows processes with reverse domain name notation (e.g., com.docker.vmnetd)
Tech Stack
Frontend: SvelteKit, TypeScript
Backend: Rust, Tauri
Styling: CSS Variables for theming
Icons: FontAwesome
Getting Started
Prerequisites
Node.js (v16 or later)
Rust (latest stable)
Xcode Command Line Tools (for macOS)
Installation
Manual
Download the latest release from the releases page.
Package Managers
Members of the community have kindly published unofficial packages for various platforms and package managers.
Please note, these packages are community-maintained and not officially released, reviewed, or endorsed by NeoHtop. We only provide official builds through the GitHub Releases page. Since these external packages are managed by third parties, we cannot guarantee their security, integrity, or update frequency.
Please use them at your own discretion.
macOS
Using Homebrew.
brew install --cask neohtop
Arch Linux (AUR)
Using the AUR and an AUR helper.
yay -S neohtop
or
paru -S neohtop
Fedora Linux
Install the Terra repository.
dnf install neohtop
Windows
Install the Scoop repository, then make sure you have the Scoop extras bucket added:
scoop bucket add extras
Then install with:
scoop install extras/neohtop
Solus
eopkg install neohtop
Running with Sudo
Some processes require monitoring with sudo privileges. To monitor these processes, launch NeoHtop with sudo:
macOS:
sudo /Applications/NeoHtop.app/Contents/MacOS/NeoHtopLinux:
pkexec /path/to/neohtop(recommended)
Development
Setup
# Install dependencies
npm install
# Run in development mode
npm run tauri dev
# Build for production
npm run tauri build
Code Formatting
We use Prettier for web code and cargo fmt for Rust code.
# Format all files
npm run format
# Check formatting without making changes
npm run format:check
Pull Requests
Before submitting a PR, ensure:
All code is formatted (
npm run format)The format check passes (
npm run format:check)Your commits follow the project's commit message conventions
Contributing
We welcome contributions! Please see our contributing guidelines for more information.
License
This project is licensed under the MIT License - see the LICENSE file for details.