Files
syspulse-rs/README.md

2.6 KiB

SysPulse

A professional, high-performance Linux system profiler built with Rust and Tauri v2. Monitor your Wayland system's performance, identify resource-hungry processes, and generate detailed profiling reports with a beautiful Catppuccin Mocha interface.


🚀 Usage

  1. Live Dashboard: Monitor real-time CPU and Memory load. Use the "Hide SysPulse" toggle to exclude the profiler's own overhead from the results.
  2. Recording: Click Record Profile to start a session. The app automatically switches to a Minimal Footprint Mode to ensure the most accurate results by reducing UI overhead.
  3. Analysis: Stop the recording to view a comprehensive Profiling Report.
  4. Inspection: Click any process in the report matrix to open the Process Inspector, showing a dedicated time-series graph of that application's resource consumption throughout the session.
  5. Admin Control: Hover over any process and click the Shield icon to terminate it (uses pkexec for secure sudo authentication).

🏗️ Architecture

  • Backend: Rust (Tauri v2)
    • Uses the sysinfo crate for low-level system data retrieval.
    • Implements an asynchronous snapshot system to capture performance data without blocking.
    • Provides secure process management via Linux pkexec.
  • Frontend: React + TypeScript + Tailwind CSS
    • Recharts: For high-performance time-series visualization.
    • Lucide-React: For a clean, modern icon system.
    • Framer Motion: For smooth, native-feeling transitions.
  • Styling: Catppuccin Mocha theme for a professional, low-strain developer experience.

🛠️ Development Setup

Prerequisites

Ensure you have the following system dependencies installed (Ubuntu/Debian example):

sudo apt update
sudo apt install libwebkit2gtk-4.1-dev build-essential curl wget file libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/syspulse-rs.git
    cd syspulse-rs
    
  2. Install Node dependencies:

    npm install
    
  3. Start Development Mode:

    npm run tauri dev
    

📦 Build Instructions

To generate a production-ready binary and system packages (Debian, RPM, AppImage):

npm run tauri build

The output will be located in: src-tauri/target/release/bundle/

Note: Building an AppImage requires appimagetool and squashfs-tools to be installed on your system.


🛡️ License

This project is open-source. See the LICENSE file for details.