Skip to content

A lightweight AI-powered system monitor built using Python. It analyzes your CPU, RAM, processes, system spikes, and predicts performance trends — all locally, with no internet required.

License

Notifications You must be signed in to change notification settings

sreenathyadavk/CorePulse

Repository files navigation

CorePulse ⚡

Professional AI-Powered System Monitor for Windows, macOS, and Linux

Python Platform License FastAPI PyQt5

FeaturesInstallationUsageDocumentationScreenshots


🌟 Overview

CorePulse is a production-grade system monitoring application that combines real-time performance tracking with AI-powered predictive analytics. Built with Python, FastAPI, and PyQt5, it delivers a modern, responsive interface for tracking CPU, RAM, disk, and network metrics across all major operating systems.

Why CorePulse?

  • 🎯 Predictive Analytics - TensorFlow-powered LSTM models forecast resource usage
  • Lightning Fast - Sub-100ms API response times with intelligent caching
  • 🎨 Modern UI - Beautiful dark-themed interface with real-time graphs
  • 🔒 Secure - Localhost-only API, zero external connections
  • 🌍 Cross-Platform - One codebase, runs everywhere
  • 📦 Standalone - Builds to native executables (no Python required)

✨ Features

Core Monitoring

  • Real-Time Metrics - CPU, RAM, Disk, Network with 1-second refresh
  • Live Graphs - Smooth, animated charts (2-minute rolling window)
  • Process Tracking - Top resource consumers with sorting
  • Thread Count - System-wide thread monitoring
  • Historical Data - SQLite-backed data logging with auto-cleanup

AI & Predictions

  • 🔮 ML Forecasting - LSTM-based predictions (10, 20, 30 minutes ahead)
  • 📈 Trend Visualization - Dedicated prediction dashboard with gauges
  • 🎯 Anomaly Detection - Smart alerts for unusual behavior
  • 🔄 Auto-Training - Models retrain every 6 hours

User Experience

  • 🎨 Modern Design - Gradient cards, glassmorphism, smooth animations
  • 🌙 Dark Theme - Eye-friendly interface
  • ⚙️ Customizable - Configurable thresholds and settings
  • 🔔 Smart Notifications - Cooldown-based alerts (no spam)
  • 🚀 Hybrid Mode - Backend runs independently or with UI

🚀 Installation

Prerequisites

  • Python 3.8 or higher
  • 500 MB free disk space
  • 500 MB RAM minimum

Quick Start

# Clone the repository
git clone https://github.com/yourusername/CorePulse.git
cd CorePulse

# Create virtual environment
python -m venv venv

# Activate virtual environment
# On Linux/macOS:
source venv/bin/activate
# On Windows:
venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Run CorePulse
python run.py

That's it! CorePulse will open automatically.


💻 Usage

Running the Application

Option 1: Quick Start (Both Backend + UI)

python run.py

Option 2: 24/7 Monitoring (Recommended)

# Terminal 1: Start backend (keep running)
python start_backend.py

# Terminal 2: Launch UI (anytime)
python start_ui.py

Option 3: Standalone Executable

# Build first (one-time)
./build.sh  # Linux/macOS
build.bat   # Windows

# Run executable
./dist/CorePulse  # No Python needed!

Stopping CorePulse

  • UI + Backend: Use Ctrl+Q or File → Quit All
  • Backend Only: python stop_backend.py

📖 Documentation

Document Description
USAGE.md Detailed usage guide and hybrid mode
CROSS_PLATFORM.md Platform-specific setup instructions
BUILD.md Building executables for distribution

🎯 Architecture

┌─────────────────────────────────────────────────────────┐
│                    Desktop UI (PyQt5)                   │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐ │
│  │  Dashboard   │  │ Live Graphs  │  │ Predictions  │ │
│  └──────────────┘  └──────────────┘  └──────────────┘ │
└─────────────────────────────────────────────────────────┘
                         ↕ HTTP
┌─────────────────────────────────────────────────────────┐
│               Backend API (FastAPI)                     │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐ │
│  │System Monitor│  │  ML Predictor│  │ Data Logger  │ │
│  └──────────────┘  └──────────────┘  └──────────────┘ │
└─────────────────────────────────────────────────────────┘
                         ↕
┌─────────────────────────────────────────────────────────┐
│         Data Layer (SQLite + TensorFlow Models)         │
└─────────────────────────────────────────────────────────┘

Technology Stack:

  • Backend: FastAPI, psutil, TensorFlow, NumPy, Pandas
  • Frontend: PyQt5, Matplotlib
  • Database: SQLite
  • ML: TensorFlow/Keras (LSTM networks)
  • Build: PyInstaller

Dashboard

Main monitoring dashboard with live metrics

Live Graphs

Real-time CPU and RAM graphs with 2-minute history

Predictions

AI-powered usage forecasting with trend visualization


🛠️ Development

Project Structure

CorePulse/
├── backend/              # FastAPI server
│   ├── api/             # REST endpoints
│   └── services/        # Business logic
├── desktop/             # PyQt5 UI
│   └── widgets/         # UI components
├── data/                # SQLite database (runtime)
├── models/              # ML models (runtime)
└── dist/                # Built executables

Running Tests

# Backend
python -m pytest backend/tests/

# Integration
python -m pytest tests/

Building Executables

# Linux/macOS
./build.sh

# Windows
build.bat

Output:

  • Linux: dist/CorePulse
  • Windows: dist/CorePulse.exe
  • macOS: dist/CorePulse.app

🤝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📊 Performance

  • API Response Time: <100ms
  • UI Refresh Rate: 1 second
  • Memory Footprint: ~150-200 MB
  • CPU Usage: <5% idle, <10% active
  • Startup Time: 2-3 seconds

🔐 Security

  • ✅ Backend binds to 127.0.0.1 (localhost only)
  • ✅ No external network connections
  • ✅ No telemetry or data collection
  • ✅ All data stored locally

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.


🙏 Acknowledgments

  • FastAPI - Modern web framework
  • PyQt5 - Powerful GUI framework
  • TensorFlow - ML predictions
  • psutil - System monitoring

📬 Contact


⭐ Star this repo if you find it helpful!

Made with ❤️ by developers, for developers

About

A lightweight AI-powered system monitor built using Python. It analyzes your CPU, RAM, processes, system spikes, and predicts performance trends — all locally, with no internet required.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages