Projects

These are production systems I've built and operate — not prototypes or weekend experiments.


Monetize

Problem: Small businesses need web presence but can't afford custom development. Domain investors need revenue from parked domains. Both problems have the same solution: automated, themed websites that generate leads.

Solution: A multi-domain lead generation platform that serves 32 domains across 7 archetypes (lead-gen, affiliate-hub, scanner-tool, content-hub, landing-lease, personal, parked). Middleware rewrites route each domain to its archetype. Per-domain theming via CSS variables. Lead capture routes to PostgreSQL with management API.

Stack: Next.js, TypeScript, PostgreSQL, Vercel, Cloudflare, Tailwind CSS

Key details:

  • 32 active domains with per-domain configuration
  • 7 content archetypes with distinct layouts and CTAs
  • Management API with 10 endpoints (leads, domains, analytics, health, content)
  • OpenClaw integration via pull-based polling

OpenClaw

Problem: AI agents need coordination — a way to receive tasks, execute them across systems, and report results. Most "agent frameworks" are demos. This one runs in production.

Solution: An AI agent coordination framework with a gateway service, node hosting, and task queue. Skippy (the AI agent) operates across WhatsApp, Discord, and GitHub Issues, coordinating with Claude Code sessions via SSH, file-based task queues, and GitHub's API.

Stack: Node.js, TypeScript, SystemD, Gateway Architecture

Key details:

  • Three systemd services: gateway (port 18789), node host, gmail watcher
  • Task queue system with pending/completed directories
  • GitHub Issues as primary coordination layer with label-based routing
  • Multi-channel communication (WhatsApp, Discord, GitHub)

Presence

Problem: Maintaining consistent professional presence across GitHub, LinkedIn, Twitter, Bluesky, and a personal site is tedious and error-prone. Profiles drift. Updates get missed.

Solution: A cross-platform profile builder that reads a single YAML profile, generates platform-optimized content via Claude API, and syncs to each platform. GitHub gets a technical README with patents. LinkedIn gets recruiter-optimized copy. Twitter gets a punchy bio.

Stack: TypeScript, Claude API, Zod, GitHub CLI

Key details:

  • Single source of truth: profile.yaml with full career data
  • AI-generated content tailored per platform
  • Adapters: GitHub (full-auto via API), LinkedIn (generate + clipboard), Twitter, Bluesky
  • Diff and sync commands with dry-run support