sumant1122
perfdeck
Go

๐Ÿ“Š A modern, lightweight, and customizable TUI performance monitor for your terminal. Built with Go and Bubble Tea.

Last updated Jun 24, 2026
120
Stars
5
Forks
1
Issues
0
Stars/day
Attention Score
60
Language breakdown
No language data available.
โ–ธ Files click to expand
README

๐Ÿ“Š Perfdeck

A modern, lightweight, and customizable TUI performance monitor for your terminal.

Go Reference Go Report Card CI License: MIT Release

Features โ€ข Installation โ€ข Usage โ€ข Configuration โ€ข Contributing


๐Ÿ’ก Why Perfdeck?

Traditional performance monitors often overwhelm users with information or lack the flexibility to show exactly what you need. Perfdeck solves this by providing:

  • Consolidation: View output from multiple diagnostic tools (like top, vmstat, netstat) in one place.
  • Focus: A clean, tabbed interface lets you switch between different metrics without terminal clutter.
  • Visibility: Real-time sparklines provide an immediate "at-a-glance" health check of your system's core resources.
  • Flexibility: Don't like the defaults? Bring your own shell commands via a simple TOML file.

โœจ Features

  • ๐Ÿš€ Blazing Fast: Written in Go with minimal CPU and memory overhead.
  • ๐Ÿ“‚ Tabbed Navigation: Organize your monitoring tools into logical, navigable views.
  • ๐Ÿ“ˆ Live Sparklines: Visual summaries for Load, CPU, Memory, and Network.
  • ๐ŸŽจ Adaptive Themes: Seamlessly toggle between Light and Dark modes.
  • โš™๏ธ Deeply Configurable: Custom commands, refresh intervals, and environment-specific settings.
  • ๐Ÿง Cross-Platform: Intelligent defaults for both Linux and macOS.

๐Ÿ“ธ Screenshots

Dark Mode (Default)

Perfdeck Dark Mode

Light Mode

Perfdeck Light Mode

๐Ÿš€ Installation

๐Ÿ“ฆ Pre-built Binaries

Download the latest pre-compiled binaries from the Releases page.

๐Ÿ› ๏ธ Using go install

go install github.com/sumant1122/perfdeck@latest
[!NOTE]
Ensure your GOPATH/bin is in your PATH (e.g., export PATH=$PATH:$(go env GOPATH)/bin) so you can run the perfdeck command from any directory.

๐Ÿ”จ From Source

git clone https://github.com/sumant1122/perfdeck.git
cd perfdeck
make build

Binary will be in the project root

๐Ÿ“– Usage

Simply run the command to start monitoring with default system tools:

perfdeck

โŒจ๏ธ Key Bindings

| Key | Action | |:---|:---| | Tab / Shift+Tab | Next / Previous Tab | | j / k (or โ†“/โ†‘) | Scroll through command output | | t | Toggle Light/Dark theme | | v | Display version information | | q / Esc / Ctrl+C | Exit Perfdeck |

โš™๏ธ Configuration

Perfdeck is designed to be personalized. To create your own configuration, create a file named perfdeck.toml in one of the following locations (searched in this order):

  • $PERFDECK_CONFIG (full path to the file)
  • ~/.config/perfdeck/config.toml
  • The current directory (./perfdeck.toml)

๐Ÿ“ Example perfdeck.toml

Create the file with your favorite editor and add the following content to customize your tabs and refresh intervals:

# Interval for updating the sparklines and default tabs
globalrefreshinterval = "5s"

[[tab]] title = "Process Explorer" cmd = ["top", "-b", "-n", "1"] refresh_interval = "2s" # Specific interval for this tab

[[tab]] title = "Network Connections" cmd = ["ss", "-tulpn"]

๐ŸŽ macOS Support

Perfdeck works great on macOS! While many Linux-native tools (like mpstat or free) are not available by default, you can easily add macOS-equivalent commands to your perfdeck.toml.

Example macOS-friendly tabs:

[[tab]] title = "Memory (vm_stat)" cmd = ["vm_stat"]

[[tab]] title = "Disk I/O (iostat)" cmd = ["iostat", "-w", "1", "-c", "2"]

[[tab]] title = "Battery Status" cmd = ["pmset", "-g", "batt"]

๐Ÿ›  Development

We utilize a simple Makefile for a streamlined development experience:

  • make run: Start the application in development mode.
  • make build: Compile the binary.
  • make test: Execute the test suite.
  • make lint: Run the golangci-lint (if installed).

๐Ÿค Contributing

We love contributions! Whether it's a bug report, a new feature idea, or a documentation improvement, please feel free to:

๐Ÿ“œ License

Distributed under the MIT License. See LICENSE for details.


Built with โค๏ธ using Bubble Tea

๐Ÿ”— More in this category

ยฉ 2026 GitRepoTrend ยท sumant1122/perfdeck ยท Updated daily from GitHub