Skip to content

A terminal-based real-time website & server monitor that pings multiple endpoints, tracks uptime, latency, and gives you clean, colorized output.

Notifications You must be signed in to change notification settings

ajm19826/PulsePing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ PulsePing

PulsePing is a lightweight, terminal-based real-time uptime and latency monitor written in Go.
It checks multiple websites or servers at a fixed interval and displays their status live in your terminal.

Think: mini UptimeRobot, but local, fast, and no BS.


✨ Features

  • Monitor multiple URLs or endpoints
  • Shows:
    • ✅ UP / ❌ DOWN status
    • ⏱️ Response time (milliseconds)
  • Live-refreshing terminal output
  • Configurable via a simple JSON file
  • Zero external dependencies (Go standard library only)

📁 Project Structure

pulseping/
├─ main.go # Entry point & UI loop
├─ monitor.go # HTTP check logic
├─ config.json # Targets + interval
├─ go.mod # Go module definition
└─ README.md


⚙️ Configuration

Edit config.json:

{
  "interval_seconds": 5,
  "targets": [
    "https://google.com",
    "https://github.com",
    "https://example.com"
  ]
}
  • interval_seconds: how often PulsePing checks targets

  • targets: list of URLs to monitor

▶️ Getting Started

Requirements

  • Go 1.22+

  • Terminal that supports ANSI escape codes

Run locally

  • go mod tidy
  • go run .

Build binary

  • go build -o pulseping
  • ./pulseping

🖥️ Example Output

⚡ PulsePing — Live Monitor

✅ https://google.com           42ms
✅ https://github.com           78ms
❌ https://example.com          DOWN

About

A terminal-based real-time website & server monitor that pings multiple endpoints, tracks uptime, latency, and gives you clean, colorized output.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages