import { motion } from "framer-motion"; import { useRef } from "react"; import { ArrowRight, FileText, Users, CheckCircle, Rocket, Search, Code, Palette, Monitor, } from "lucide-react"; import { Button } from "./ui/button"; import { Badge } from "./ui/badge"; import { navigateTo } from "@/App"; const steps = [ { id: "step-1", title: "1. Define Scope", description: "We begin by gathering all project inputs, defining clear goals, creating technical documentation, and aligning on expectations.", visual: { type: "icon_or_doc_mockup", style: "minimal_ui", }, }, { id: "step-2", title: "2. Design UI/UX", description: "Our designers craft user-centric interfaces in Figma with clickable flows, visual systems, and detailed wireframes for all screens.", tags: [ { label: "Wireframes", color: "#6366F1" }, { label: "Prototyping", color: "#10B981" }, { label: "UI System", color: "#F59E0B" }, ], }, { id: "step-3", title: "3. Develop with Agile Sprints", description: "We use Agile sprints to turn designs into production-ready code, with continuous integration and weekly builds.", tags: [ { label: "Frontend", color: "#3B82F6" }, { label: "Backend", color: "#0EA5E9" }, { label: "APIs", color: "#8B5CF6" }, ], }, { id: "step-4", title: "4. Test, Launch & Scale", description: "After QA and UAT, we help launch confidently. Then we monitor, iterate, and scale your product to grow with your users.", chat_simulation: [ { from: "You", text: "Are we ready to go live?" }, { from: "Team", text: "Yes! Final tests passed 🚀" }, ], }, ]; // Chat simulation component - Compact version const ChatSimulation = ({ messages, }: { messages: Array<{ from: string; text: string }>; }) => { return (
{messages.map((message, index) => (
{message.from}
{message.text}
))}
); }; // Document mockup component - Compact version const DocumentMockup = () => { return (
{/* Header */}
Project Scope
Draft v1.2
{/* Document sections */}
Requirements Research
); }; // Process step card component const ProcessCard = ({ step, index, }: { step: (typeof steps)[0]; index: number; }) => { const cardRef = useRef(null); const renderContent = () => { if (step.visual?.type === "icon_or_doc_mockup") { return ; } if (step.chat_simulation) { return ; } if (step.tags) { return (
{step.tags.map((tag, tagIndex) => ( {tag.label} ))}
); } return null; }; return (
{/* Header */}
{step.title} {step.description}
{/* Content */} {renderContent()}
); }; export const ProcessSection = () => { const titleRef = useRef(null); return (
{/* Title Section */}
How We Turn an Idea into a{" "} Scalable Product Our proven process transforms your vision into reality through strategic planning, thoughtful design, and expert engineering—every step of the way.
{/* Cards Grid */}
{steps.map((step, index) => ( ))}
{/* Bottom CTA */}
); };