Thanks to visit codestin.com
Credit goes to github.com

Skip to content

An open-source monitoring tool for SSL certificates, domain expirations, TCP services, and cronjobs — with alerting and status pages.

License

Notifications You must be signed in to change notification settings

denisakp/pulseguard

PulseGuard Logo

PulseGuard

Simple, self-hosted uptime monitoring. Check if your websites and services are up.

License Go Vue GitHub Stars

PulseGuard monitors your websites, APIs, and services. If something goes down, you get notified. That's it.

No complex setup. No overwhelming dashboards. Just pure uptime monitoring.

PulseGuard Dashboard


🤔 Why PulseGuard?

I started exploring monitoring stacks like Prometheus, Grafana, Tempo, and AlertManager. But configuring dozens of config files just to check if my websites were up seemed crazy.

So I built this during my internship in 2023 with TypeScript and NestJS. Later, I rewrote it in Go while learning the language. Now it's a simple, straightforward monitoring tool that just works.


Get Started in 30 Seconds

git clone https://github.com/denisakp/pulseguard.git
cd pulseguard
docker compose up -d

Open http://localhost:8080 and log in with:

Change the password on first login. PulseGuard Login Screen

✨ What You Get

  • 🌐 Monitor Websites – HTTP/HTTPS checks
  • 🔌 Monitor Services – TCP port checks
  • 🔔 Get Notified – Email, Slack, Webhooks
  • 📊 Track Incidents – See when things went wrong
  • 🌍 Status Page – Share status with customers
  • 🛠️ Maintenance Windows – Avoid false alarms during updates
  • 🏷️ Organize – Tag and group monitors
  • 🔐 Secure – 2FA support

Create and Monitor Resources


📑 Table of Contents


Installation

Docker (Recommended)

git clone https://github.com/denisakp/pulseguard.git
cd pulseguard
cp .env.example .env
docker compose up -d

Access at http://localhost:8080

The docker-compose includes everything: app, database, Redis, and reverse proxy.


How It Works

  1. Add Monitors – Tell PulseGuard what to check (websites, APIs, services)
  2. Automatic Checks – It checks every 5 minutes by default (customizable)
  3. Track Status – See uptime history and incident timeline
  4. Get Alerts – Email notifications when things go down
  5. Status Page – Share public status with customers

That's it. No complexity.

Incident Tracking and Timeline

Notification Channels Setup

Maintenance Windows

Public Status Page


Configuration

Environment Variables

# Database
DATABASE_URL=postgres://user:password@host:5432/pulseguard
REDIS_URL=localhost:6379

All options in .env.example



💭 Feedback & Testing

We're actively developing PulseGuard and value your input! Help us improve by:

  • Share Your Feedback (Anonymous form) – Tell us what you think about the UI, features, and user experience
  • Report Bugs – Found something broken? Open an issue
  • Suggest Features – Have ideas? Start a discussion

Your feedback helps shape the future of PulseGuard. The feedback form is completely anonymous and takes about 2 minutes.

💬 Contributing

Found a bug? Have an idea? Let us know!

We welcome pull requests. Please read CONTRIBUTING.md first.


📄 License

MIT License – See LICENSE for details.

You can use PulseGuard for commercial or personal projects.


📚 More Info


⬆ Back to top

Built with ❤️ by denisakp

About

An open-source monitoring tool for SSL certificates, domain expirations, TCP services, and cronjobs — with alerting and status pages.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages