import { Button } from "@/components/ui/button"; import { Card, CardContent } from "@/components/ui/card"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Separator } from "@/components/ui/separator"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuGroup } from "@/components/ui/dropdown-menu"; import { CheckCircle2, ArrowRight, Crosshair, ChevronDown } from "lucide-react"; import { useState, useEffect } from "react"; import { useToast } from "@/hooks/use-toast"; import { Link, useLocation } from "react-router-dom"; import { verticalCategories } from "@/data/verticals"; const Index = () => { const { toast } = useToast(); const [isSubmitting, setIsSubmitting] = useState(false); const [step, setStep] = useState(1); const location = useLocation(); useEffect(() => { if (location.hash) { const id = location.hash.replace('#', ''); const element = document.getElementById(id); if (element) { element.scrollIntoView({ behavior: 'smooth' }); } } }, [location]); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); setIsSubmitting(true); const formData = new FormData(e.currentTarget); const formValues = { firstName: formData.get("firstName") as string, lastName: formData.get("lastName") as string, email: formData.get("email") as string, phone: formData.get("phone") as string, address: formData.get("address") as string, vertical: formData.get("vertical") as string, }; const trackingPayload = { type: "external_form_submission", timestamp: Date.now(), formId: "Trial Order Form", formData: { first_name: formValues.firstName, last_name: formValues.lastName, email: formValues.email, phone: formValues.phone, address: formValues.address, "contact.target_vertical": formValues.vertical, }, formLabels: { first_name: "First Name", last_name: "Last Name", email: "Email", phone: "Phone", address: "Address", "contact.target_vertical": "Target Vertical", }, url: window.location.href, title: document.title, path: window.location.pathname, userAgent: navigator.userAgent, trackingId: "tk_99ee12163e784a2e925a7c008df8452a", locationId: "WqNzmhoGZrjHfvhU3i6z", sessionId: crypto.randomUUID(), properties: { deviceType: /Mobile|Android|iPhone/i.test(navigator.userAgent) ? "mobile" : "desktop", }, }; fetch("https://backend.leadconnectorhq.com/external-tracking/events", { method: "POST", headers: { "Content-Type": "application/json", version: "2021-07-28" }, body: JSON.stringify(trackingPayload), }).catch(() => {}); // Simulate form submission setTimeout(() => { setIsSubmitting(false); setStep(1); toast({ title: "Trial Requested", description: "Your luxury lead trial setup is in progress.", }); (e.target as HTMLFormElement).reset(); }, 1000); }; // Verticals data is now imported from @/data/verticals return (
{/* Navigation */}
{/* Hero Section */}
Live Signals Active in LA & San Diego

Contractor Project Intelligence
for LA's Luxury Trade

We research, verify, and rank active remodeling projects across Los Angeles — so trade vendors know exactly where work is happening and who's doing it. Every report covers active permitted projects, verified contractor records, and AI-ranked activity signals. Delivered as a CSV — ready for your CRM or outreach platform.

No credit card required

Only Top Tier Operators

Showing all three growth signals right now in Los Angeles and Greater Southern California.

Direct Lines & Names

Your rep gets a verified name, direct contact info, and a pitch angle already written based on Lead Signals.

Stop Cleaning Data

Is your team cleaning and enriching a poor lead spreadsheet — should they not be booking meetings today!

{/* Verticals Section */}

Alpha Served Verticals

See all verticals
{verticalCategories.map((vertical, idx) => (

{vertical.title}

    {vertical.items.map((item, itemIdx) => { const Icon = item.icon; return (
  • {item.name}
  • ); })}
))}
{/* How It Works Section */}

How It Works For Our Vendor Connection Buyers

Every connection we build starts from the same question your SDR should be asking before every call: is this business actively spending money right now? We cross-reference live hiring signals, certification databases, licensing boards, and website intelligence to find the operators showing two or three buying signals simultaneously. No static databases. No recycled Apollo exports. Fresh, scored, and delivered this week.

Alpha Remodeler Reports
2544 Navarra DR Carlsbad, CA 92009
[email protected]
760-201-6187

{/* Lead Capture Section */}
{/* Background Image of $100 bills */}
{/* Gradient overlay at 70% opacity (30% transparency) */}

Stop wasting Mondays.

Get your first batch of high-signal leads this week. We'll send you a sample tailored to your target vertical.

  • Verified contact information
  • Live intent signals
  • Pre-written pitch angles

Claim Your Trial Below.

1
2
{/* STEP 1: Contact Info */}

Step 1: Contact Info

By submitting, you agree to our Terms of Service and Privacy Policy.

{/* STEP 2: Payment */}

Step 2: Payment

Order Summary
14 Day Trial Offer Product $497.00
Secure Payment Gateway Integration (Configured in Funnel Settings)
{/* Footer */}
Alpha Remodeler Reports Alpha Remodeler Reports

© {new Date().getFullYear()} Alpha Remodeler Reports. All rights reserved.

); }; export default Index;