Skip to content

rkiilincc/devpulse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


██████╗ ███████╗██╗   ██╗██████╗ ██╗   ██╗██╗     ███████╗███████╗
██╔══██╗██╔════╝██║   ██║██╔══██╗██║   ██║██║     ██╔════╝██╔════╝
██║  ██║█████╗  ██║   ██║██████╔╝██║   ██║██║     ███████╗█████╗  
██║  ██║██╔══╝  ╚██╗ ██╔╝██╔═══╝ ██║   ██║██║     ╚════██║██╔══╝  
██████╔╝███████╗ ╚████╔╝ ██║     ╚██████╔╝███████╗███████║███████╗
╚═════╝ ╚══════╝  ╚═══╝  ╚═╝      ╚═════╝ ╚══════╝╚══════╝╚══════╝

Self-hosted daily SaaS monitoring bot for solo founders.
Monitor your Render services & Supabase tables.
Get reports via Telegram, Discord, Slack, or Email.


License: MIT Node.js Stars Issues PRs Welcome


Quick Start · Features · Roadmap · Contributing


What is DevPulse?

DevPulse is a self-hosted monitoring tool built for indie hackers and solo founders who use Render for hosting and Supabase as their database.

Instead of checking dashboards manually every morning, DevPulse sends you a clean daily report directly to your preferred messaging platform — automatically, at the time you choose.

Built by a solo founder, for solo founders.


✨ Features

📡 Multi-Channel Notifications

Send reports to any combination of:

Channel What you need
✈️ Telegram Bot token + Chat ID
💬 Discord Webhook URL
💼 Slack Webhook URL
📧 Email SMTP credentials

🚀 Render Monitoring

  • Service uptime & response time (ping)
  • Deploy history (last 3 deploys with commit messages)
  • Service status (live / suspended / failed)
  • Multi-service support

🗄 Supabase Monitoring

  • Auto-discovers all tables in your project
  • Per-table row counts
  • New records in the last 24 hours
  • Recent entries preview
  • Storage bucket listing

⚙️ Web Dashboard

  • Clean dark-mode UI
  • Configure everything without touching config files
  • Live preview before sending
  • Report history log
  • Test each notification channel independently

⏰ Smart Scheduling

  • Set your daily report time (timezone-aware, UTC+3 default)
  • Instant manual send anytime

📸 Sample Report

📊 DevPulse Report
🕐 09:00 - 09.03.2026

🚀 Render Services
🟢 my-api — 142ms
   🌐 api.myapp.com
   ✅ Last deploy: live — "fix: localization keys"

🗄 Supabase Tables
📋 waitlist
   👥 Total: 247 rows
   📈 Last 24h: +12 new

━━━━━━━━━━━━━━━
DevPulse • github.com/rkiilincc/devpulse

🚀 Quick Start

Prerequisites

  • Node.js 18+
  • PM2 for 24/7 uptime: npm install -g pm2

1. Clone & Install

git clone https://github.com/rkiilincc/devpulse.git
cd devpulse/backend
npm install

2. Start the Backend

# Development
npm run dev

# Production (with PM2)
cd ..
pm2 start ecosystem.config.js
pm2 save && pm2 startup

3. Open the Dashboard

Open frontend/index.html in your browser.

With Nginx? See Nginx Setup Guide to serve the dashboard on a domain.

4. Configure via UI

  1. Go to Settings tab
  2. Enter your Render API key → Fetch Services → select which to monitor
  3. Enter your Supabase URL + Service Role Key → Fetch Tables → select tables
  4. Enable notification channels and enter credentials
  5. Set your daily report time
  6. Click Save SettingsTest each channel

That’s it. DevPulse will send your first report at the scheduled time.


🗂 Project Structure

devpulse/
├── backend/
│   ├── server.js              # Express API + scheduler
│   ├── report.js              # Report builder
│   ├── collectors/
│   │   ├── render.js          # Render API integration
│   │   └── supabase.js        # Supabase integration
│   └── notifiers/
│       └── index.js           # Telegram / Discord / Slack / Email
├── frontend/
│   └── index.html             # Web dashboard (single file)
├── ecosystem.config.js        # PM2 config
└── docs/
    └── nginx.md               # Nginx reverse proxy guide

🔑 Getting Your Credentials

Render API Key
  1. Go to render.com → Account Settings → API Keys
  2. Create a new key and copy it
Supabase Service Role Key
  1. Supabase project → Settings → API
  2. Copy the service_role key (not the anon key)
  3. ⚠️ Keep this secret — it has full DB access
Telegram Bot Token
  1. Open Telegram → search @BotFather
  2. Send /newbot and follow the steps
  3. To get your Chat ID: message @userinfobot
Discord Webhook
  1. Channel Settings → Integrations → Webhooks → New Webhook
  2. Copy the webhook URL

🗺 Roadmap

  • Telegram, Discord, Slack, Email notifications
  • Render service monitoring
  • Supabase table statistics
  • Web dashboard with dark UI
  • Report history
  • Uptime alerts (instant, not just daily)
  • Docker image
  • Railway, Fly.io, Vercel integrations
  • Multiple schedules
  • WhatsApp support

Have an idea? Open an issue 🙌


🤝 Contributing

See <CONTRIBUTING.md> for guidelines.

git clone https://github.com/YOUR_USERNAME/devpulse.git
cd devpulse/backend
npm install
npm run dev

📄 License

MIT — free to use, modify, and distribute. See .


Built in public by rkiilincc
If DevPulse saves you time, consider giving it a ⭐

About

Daily SaaS monitoring for solo founders — Render + Supabase reports via Telegram, Discord, Slack & Email

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors