Skip to content

Repository files navigation

PulseGuard

PulseGuard Banner

A lightweight, open-source performance monitoring plugin for modern Paper servers.

Monitor your server's health in real time with an intuitive dashboard, performance snapshots, configurable alerts, and detailed world statistics.

Java 21 Paper MIT License


✨ Features

  • 📊 Live TPS & MSPT monitoring
  • 💾 Memory usage statistics
  • ⚙️ CPU usage overview
  • 🌍 Per-world performance reports
  • 👥 Entity & chunk statistics
  • 📦 Tile entity monitoring
  • 📈 Performance history
  • 📸 Performance snapshots
  • 🚨 Configurable warning & critical alerts
  • ✅ Recovery notifications
  • 🌐 Discord webhook support
  • 🎨 Clean inventory GUI
  • ⚡ Lightweight and optimized scheduling
  • 🔧 Fully configurable
  • 📖 Open source

📷 Screenshots

Dashboard

World Statistics


📦 Requirements

  • Java 21 or newer
  • Paper 1.21.4 or newer

🚀 Installation

  1. Download the latest release from the Releases page.
  2. Place the JAR into your server's plugins folder.
  3. Start or restart the server.
  4. Configure PulseGuard inside:
plugins/PulseGuard/
  1. Reload the plugin or restart the server after changing the configuration.

📖 Commands

Command Description
/pulse Opens the main dashboard
/pulse snapshot Creates a performance snapshot
/pulse world Shows world statistics
/pulse history Displays performance history
/pulse reload Reloads the configuration

🔐 Permissions

Permission Description
pulseguard.use Basic access
pulseguard.snapshot Create snapshots
pulseguard.world View world statistics
pulseguard.history View history
pulseguard.admin Administrative commands

⚙️ Example Configuration

monitoring:
  interval-seconds: 10

alerts:
  enabled: true
  tps-warning: 18.0
  tps-critical: 15.0
  mspt-warning: 40.0
  mspt-critical: 50.0

webhook:
  enabled: false
  url: ""

⚡ Performance Philosophy

PulseGuard is designed to provide useful server diagnostics while minimizing runtime overhead.

Monitoring tasks run at configurable intervals, expensive operations are avoided whenever possible, and the plugin is intended to integrate cleanly into modern Paper servers without significantly affecting gameplay.


🔨 Building From Source

Clone the repository:

git clone https://github.com/Luhtaniilo010/PulseGuard.git
cd PulseGuard

Build using Gradle:

Windows

.\gradlew.bat clean build

Linux / macOS

./gradlew clean build

The compiled plugin will be available in:

build/libs/

🤝 Contributing

Contributions are welcome.

  1. Fork the repository.
  2. Create a new branch.
  3. Commit your changes.
  4. Open a Pull Request.

Bug reports, feature suggestions, and performance improvements are always appreciated.


🛠️ Compatibility

Platform Status
Paper ✅ Supported
Folia ⚠️ Experimental / Untested
Spigot ⚠️ Not officially supported
Bukkit ❌ Unsupported

📝 Roadmap

  • Additional performance graphs
  • Exportable reports
  • Expanded webhook integrations
  • More dashboard customization
  • Historical data improvements
  • Additional optimization metrics

🐛 Reporting Issues

If you encounter a bug, please include:

  • PulseGuard version
  • Minecraft version
  • Paper build
  • Java version
  • Console errors
  • Steps to reproduce the issue

This helps reproduce and resolve problems much faster.


📄 License

This project is licensed under the MIT License.

See the LICENSE file for more information.


Support

If PulseGuard helps your server, consider giving the repository a ⭐.

Feedback, suggestions, and contributions are greatly appreciated.


Made with ❤️ for the Minecraft community.

About

A lightweight and open-source server health monitoring plugin for modern Paper servers.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages