Back to Production Projects

Full-Stack Product · Live

Sunshine CRM

The agency's own operations platform — every lead from the website, the chat widget, and the voice agents lands in one pipeline. Built, secured, deployed, and validated in six days.

35Features shipped
15SQL migrations, RLS throughout
4N8N workflows on the spine
6 daysIdea to validated production

The Lead Loop

One Pipeline, Every Channel

The CRM is the operational home for the voice platform's output — leads arrive on their own and move on schedule.

Captured

A lead arrives from the website contact form, the chat widget, or a live voice agent — each channel its own n8n workflow writing the same lead record.

Pipelined

Drag-and-drop Kanban across multiple pipelines, with per-stage templates and atomic stage updates enforced at the database layer.

Followed up

A daily cron workflow surfaces overdue leads and fires follow-up reminders — nothing sits still because nobody remembered to check.

Measured

Analytics RPCs power dashboards and cross-customer admin views — usage tracked per plan, not bolted on afterwards.

Product Discipline

Built Like a Product, Not a Demo

The things you only bother with when software has to survive real users.

Invite-only access

No public signups. Edge-function emails via Resend, invite tokens with expiry, re-invite flows, and team roles — every auth path validated in production before launch day ended.

Security at the database

Row-level security on every table, built across 15 migrations — multi-pipeline policies, template admin policies, and atomic stage updates live in SQL, not in hopeful frontend code.

Frontend craft

React 19 + Vite + shadcn/ui, installable PWA, mobile-responsive, WCAG 2.2 AA — the same accessibility bar shipped on client sites.

Hardened delivery

CSP, HSTS, and friends via security headers; a custom Vite plugin strips every console call from production builds; Cloudflare Pages auto-deploys on push to main.

The Spine

N8N Does the Arriving

Four workflows feed and tend the pipeline — the same n8n instance running the rest of the operation.

Contact Form Handler

Website form → lead record, with duplicates and routing handled in the workflow.

Chat lead capture

The site's AI chat writes qualified leads straight into the pipeline.

Voice lead capture

Every voice-agent call lands as a lead with its booking and cost telemetry attached.

Daily follow-up cron

Overdue leads surfaced daily; reminders fired through Google Calendar and Sheets integrations.

The Build

Seven Sessions, Six Days

From empty folder to validated production — the shipping velocity the rest of this portfolio runs on.

Sessions 1–2 · May 19–20

The frontend ships — 35 features

React 19 + Vite + Tailwind + shadcn/ui, PWA, mobile responsive, WCAG 2.2 AA.

Sessions 3–4 · May 20–21

The backend spine

Four n8n workflows, RPCs, usage tracking, Google Sheets and Calendar integration.

Session 5 · May 22

People can get in

Resend SMTP with branded email templates, edge functions, invite and re-invite flows.

Session 6 · May 23

It ships

Repo cleanup, git push, Cloudflare Pages deployment, security headers.

Session 7 · May 24

It's validated

Every auth flow passes in production; first pipeline bug found and fixed.

Live in production

The CRM runs the agency's pipeline today — invite-only by design, so you'll see the door, not the data.