Project Deep Dive

ShipWatch Live

ShipWatch Live is a full-stack developer tool that connects to your GitHub account via OAuth and receives webhook events from your repositories. It surfaces push activity, flags suspicious commits (bug fixes, large pushes, hotfixes), and gives you a live feed of what's happening across all your repos in one place.

Next.jsTypeScriptSupabaseTailwind CSSGitHub API

Project Vlog

The Problem

When you're working across multiple repositories — personal projects, freelance work, side experiments — it's easy to lose track of what's happening where. You miss a push to main, a hotfix you forgot about, or a repo that's gone stale. There's no single view that gives you the full picture.

What ShipWatch Live Does

ShipWatch Live solves this by acting as a real-time monitoring layer on top of GitHub. Once you connect your GitHub account, the app registers webhooks on your selected repositories and starts receiving push events. Every commit, every branch push, every large batch of changes lands in your dashboard instantly.

Key Features

  • GitHub OAuth integration — connect your account securely and select which repos to monitor
  • Real-time activity feed — see every push event as it happens, with commit messages, authors, and timestamps
  • Smart alerting — automatic flags for bug fixes, hotfixes, crashes, and large pushes (10+ commits)
  • Inactivity detection — alerts when a connected repo has had no pushes in 7 days
  • Stats at a glance — total repos, pushes today, active alerts summarized at the top of the dashboard
  • How It's Built

    The frontend is Next.js with the App Router, using server components to fetch live data from Supabase on every request. Supabase handles both the auth session and the database — GitHub webhook payloads are stored in a `webhook_events` table and queried directly in the dashboard server component.

    Architecture

  • Auth: Supabase Auth with GitHub OAuth provider
  • Webhooks: GitHub sends `push` events to a Next.js API route, which validates and writes them to Supabase
  • Dashboard: Server-rendered page that queries Supabase for recent events, computes alerts, and renders them — no client-side polling needed
  • Alert logic: Scans recent commits for keywords (fix, bug, hotfix, patch, crash, broken) and flags direct pushes to main/master
  • Use Case

    If you're a developer managing several active projects, ShipWatch Live gives you a command center view. Instead of checking each repo individually or relying on email notifications, you get one feed with smart signal extraction — so you can focus on what actually needs attention.

    What I Learned

    Integrating GitHub webhooks end-to-end was the most interesting part of this build. The flow — OAuth install → webhook registration → payload validation → database write → server-rendered query — required careful coordination between GitHub's App API and Supabase's realtime infrastructure. It reinforced how much power server components unlock for data-heavy dashboards.