Context Labs Mactop Save

mactop - Apple Silicon Monitor Top written in pure Go Lang! Under 1,000 lines of code.

Project README

mactop

GitHub Downloads (all assets, all releases) GitHub Release

mactop is a terminal-based monitoring tool "top" designed to display real-time metrics for Apple Silicon chips. It provides a simple and efficient way to monitor CPU and GPU usage, E-Cores and P-Cores, power consumption, and other system metrics directly from your terminal!

mactop

Compatibility

  • Apple Silicon Only (ARM64)
  • macOS Monterey 12.3+

Features

  • Apple Silicon Monitor Top written in Go Lang (Under 1,000 lines of code)
  • Real-time CPU and GPU power usage display.
  • Detailed metrics for different CPU clusters (E-Cores and P-Cores).
  • Memory usage and swap information.
  • Network usage information
  • Disk Activity Read/Write
  • Easy-to-read terminal UI
  • Two layouts: default and alternative
  • Support for all Apple Silicon models.

Install via Homebrew

Help get us on the official Homebrew formulas by giving us a star! mactop

brew tap context-labs/mactop https://github.com/context-labs/mactop
brew install mactop
sudo mactop

Installation

To install mactop, follow these steps:

  1. Ensure you have Go installed on your machine. If not, you can install it by following the instructions here: Go Installation Guide.

  2. Clone the repository:

    git clone https://github.com/context-labs/mactop.git
    cd mactop
    
  3. Build the application:

    go build
    
  4. Run the application:

    sudo ./mactop
    

Usage

After installation, you can start mactop by simply running:

sudo ./mactop

sudo is required to run mactop

Use the following keys to interact with the application:

  • q: Quit the application.
  • r: Refresh the UI data manually.
  • l: Toggle the current layout.

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork mactop
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

What does mactop use to get real-time data?

  • sysctl: For CPU model information
  • system_profiler: For GPU Core Count
  • psutil: For memory and swap metrics
  • powermetrics: For majority of CPU, GPU, Network, and Disk metrics

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Carsen Klock - @carsenklock

Project Link: https://github.com/context-labs/mactop

Acknowledgements

  • termui for the terminal UI framework.
  • gopsutil for system memory monitoring.
  • asitop for the original inspiration!
Open Source Agenda is not affiliated with "Context Labs Mactop" Project. README Source: context-labs/mactop
Stars
180
Open Issues
3
Last Commit
2 weeks ago
Repository
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating