Case Study · Operations Platform · Field Services

Ridgeline Operations Platform — a leads and job pipeline for a contracting business

This project demonstrates how Granite Studios modernizes contractor operations by replacing disconnected spreadsheets with custom software tailored to the way field businesses actually work. Ridgeline Contracting Co. is a fictional business built to show the approach end to end.

Ridgeline Operations Platform overview dashboard showing pipeline value, active jobs, win rate, and average job size
Overview — pipeline value, active jobs, win rate, and average job size at a glance, with recent leads and upcoming jobs below.
Ridgeline Operations Platform leads pipeline board with columns for new, contacted, quoted, won, and lost leads
Leads — a kanban-style pipeline from first contact through won or lost, with dollar totals per stage.
Ridgeline Operations Platform jobs table with crew assignments and color-coded status
Jobs — scheduling, crew assignment, and billing status, color-coded from scheduled through paid.
Key Features

Everything a field business needs to run leads and jobs

Lead PipelineKanban stages from new to won or lost
Job SchedulingDates, addresses, and status in one table
Customer ManagementEvery contact tied to their leads and jobs
Crew AssignmentsAssign jobs to named crews and foremen
Revenue TrackingPipeline value, invoices, and average job size
Live Status UpdatesChanges sync across the team automatically
Architecture

Deliberately simple, on purpose

No servers to manage, no auth system to build for a demo that doesn't need one — just a serverless frontend talking directly to a secured database.

Customer Browser Next.js on Vercel Supabase (Postgres + Row-Level Security)
Problem

Information lived in spreadsheets, texts, and memory

Ridgeline relied on spreadsheets, text messages, and memory to keep jobs moving. Quotes were won but never scheduled. Team members weren't sure which jobs had been invoiced. Owners spent their time chasing information instead of running projects.

Approach

One pipeline, two connected views

A single Next.js dashboard with a Supabase-backed database: a kanban-style leads pipeline (new → contacted → quoted → won/lost) and a jobs table (scheduled → in progress → completed → invoiced → paid), linked so a won lead carries its history into the job record.

Outcome

Every customer, one system, start to finish

Contractors can now track every customer from first phone call to final payment in a single system — no more asking around to find out what's been quoted, scheduled, or invoiced.

Under the hood

This isn't a prototype

You're using the same application showcased above. Add leads, move jobs through the pipeline, edit records, and explore the workflow. Demo data resets hourly so every visitor starts with a clean environment.

Next.jsSupabasePostgreSQL TypeScriptTailwindshadcn/ui Vercel
Manage LeadsFrom first contact to won or lost, no lead falls through the cracks
Track JobsScheduling, crew assignment, and status in one shared view
Monitor PaymentsSee what's invoiced and outstanding without asking around
Built to Extend

This is a foundation, not the ceiling

What's live today covers the core leads-to-payment workflow. Real engagements grow from here — the same foundation extends with integrations and features scoped to how a specific business actually operates.

QuickBooks syncSMS & email notificationsCustomer-facing portal Crew mobile appMaterials & inventory trackingE-signature contracts Multi-location supportCustom reporting
Have a similar problem?

We build systems like this for real businesses.

If leads, jobs, or customers are living in spreadsheets and group chats, this is exactly the kind of thing we replace it with.