Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📊 Picomon - Lightweight Linux System Monitor

Status Platform

⚠️ Note: This project is currently under active development. Features may change, and there might be unstable behaviors. Use at your own risk in production environments.

Picomon is a modern, lightweight, high-performance desktop application for Linux (Debian 13+ / GNOME) designed for real-time hardware inspection, process management, systemd service management, and system monitoring. Built with Tauri v2, a Rust 2024 backend, and a Svelte 4 + Vite frontend.


📸 Screenshots

System Information CPU Monitoring

Memory Monitoring Storage Management


🏗️ Tech Stack & Architecture

  • Backend: Rust 2024 (sysinfo, tokio, serde, tracing, tauri v2)
  • Frontend: Svelte 4, TypeScript, Vite, Chart.js
  • IPC Protocol: Tauri v2 invoke commands & system-update event channel broadcasting
  • Design System: Fully dynamic CSS variables for 100% component reusability. Comes with 9 production-ready themes!

🚀 Getting Started

1. Prerequisites (System Dependencies)

To build and run Picomon on Debian/Ubuntu-based distributions, you must install the required development libraries:

sudo apt update
sudo apt install -y \
  libwebkit2gtk-4.1-dev \
  libgtk-3-dev \
  libayatana-appindicator3-dev \
  build-essential \
  pkg-config \
  rustc cargo nodejs npm

For Arch Linux, Fedora, or other distributions, please ensure you install the equivalent WebKit2GTK and GTK+3 development headers.

2. How to Run in Development Mode

To start the application in a local development environment with Hot Module Replacement (HMR):

# 1. Install frontend dependencies
cd src/frontend
npm install

# 2. Navigate back to the Tauri backend directory
cd ../../src-tauri

# 3. Run the Tauri dev server
cargo tauri dev

What happens automatically:

  1. Tauri starts the Vite Frontend dev server in the background.
  2. Compiles the Rust backend code.
  3. Launches the native application window.

📦 Build & Installation

To create a standalone executable or an installable package (e.g., .deb, AppImage) for your distribution. Make sure you have installed the frontend dependencies first (npm install inside src/frontend).

# Navigate to the backend directory
cd src-tauri

# Build for release (compiles Rust and bundles Svelte)
cargo tauri build

Once the build is complete, the generated bundles will be located in: src-tauri/target/release/bundle/

Installing the .deb package (Debian/Ubuntu)

If you generated a .deb file, you can install it system-wide using dpkg:

sudo dpkg -i src-tauri/target/release/bundle/deb/picomon_*.deb
# If there are missing dependencies, run:
sudo apt-get install -f

🧪 Testing

To run the backend unit tests:

cd src-tauri
cargo test

📚 Code Documentation & Maintenance

All source code is fully documented for maintainability:

  • Rust Backend: /// and //! doc comments across all modules.
  • Frontend: Strict TypeScript interfaces are maintained in src/frontend/src/lib/types.ts.

Developed with ❤️ for the Linux Desktop.
© 2026 blancberger • Released under the MIT License.

About

real time system monitoring tool for debian 13

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages