Can I vibecode Better Stack?

price $30/moyou'd save $360/yrbuild time one sittingcategory uptimereplaced by 0 people
YES
MOATinfrastructure scaleexecution polish

A cron loop, a fetch, an alert webhook, and a status page. The $30/mo is for the dashboard gloss.

In-List Ad$79/30 days
promote your product in the vibecoded list

The Build Prompt

copy it and go build
ready to paste · 2,294 chars
Build a self-hosted uptime monitoring service inspired by Better Stack and UptimeRobot.

PRODUCT BRIEF & STACK
- Single VPS deployment using Node.js, Express, better-sqlite3, node-cron, and nodemailer.
- Monitor HTTP/HTTPS endpoints, TCP ports, ping, and keyword presence at 1, 5, 10, 30, or 60 min intervals.
- Support maintenance windows to pause checks and alerts during scheduled service maintenance.

SCREENS & INFORMATION ARCHITECTURE
1. Dashboard: Monitor list with status color indicators (up/down/paused), current latency, and quick pause/resume actions.
2. Monitor Detail: SLA stats (monthly uptime %, avg response time, total downtime duration), SVG sparkline response time charts (24h, 7d, 30d) from SQLite aggregated data, incident history log with manual notes, and SSL certificate health.
3. Incident Log: Timeline of all incidents, filterable by state (acknowledged/resolved).
4. Alert Config: Setup notification channels (Email via nodemailer, Slack Webhook, PagerDuty, ntfy, custom webhooks).
5. Public Status Page (/status): Customer-facing route showing status color dot per monitor, 90-day uptime %, and GitHub/Vercel-style 30-day incident history bars.

CHECK ENGINE & INCIDENT LIFECYCLE
- Scheduling: Run per-monitor node-cron jobs with jitter to prevent check spikes.
- Execution: HTTP checks via node-fetch with configurable timeout and redirect follow; response body keyword verification; TCP checks via net.connect.
- SSL Monitoring: Weekly check using tls.connect; alert at 30, 14, and 7 days before certificate expiry.
- Incident Lifecycle: Trigger incident after X consecutive failures -> dispatch to alert channels -> auto-resolve on recovery -> send resolution alert. Support manual incident acknowledgment.
- Alert Queue: Store outbound notifications in a SQLite queue table; background worker retries failed webhooks/emails.

DATA MODEL (SQLite)
- Monitor: id, name, type (http/tcp), target, interval, keyword, timeout, status, ssl_expiry
- Check: id, monitor_id, checked_at, status_code, response_time_ms, error
- Incident: id, monitor_id, started_at, resolved_at, duration, acknowledged, notes
- AlertChannel: id, type, config (JSON string)

NON-GOALS
- Multi-tenant team accounts, white-label branding, on-call rotation management, or paid billing features.
In-List Ad$79/30 days
promote your product in the vibecoded list

What you lose

  • Hosted infrastructure and managed operations from Better Stack
  • The original service's mature integrations and ecosystem

Why it still works

🏗️ infrastructure scale · 💅 execution polish

In-List Ad$79/30 days
promote your product in the vibecoded list
Share on X ->Your vote helps rank the vibecoded list.

Questions

5 answers