From 31fef3d9b3feebaedcf5f576a95ca81924aa926e Mon Sep 17 00:00:00 2001 From: jyswee Date: Thu, 23 Jul 2026 22:11:15 +0000 Subject: [PATCH] Seed: services template (18 files) --- src/pages/Services.tsx | 221 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 221 insertions(+) create mode 100644 src/pages/Services.tsx diff --git a/src/pages/Services.tsx b/src/pages/Services.tsx new file mode 100644 index 0000000..fd76439 --- /dev/null +++ b/src/pages/Services.tsx @@ -0,0 +1,221 @@ +import { Link } from "react-router-dom"; +import { toast } from "sonner"; +import { Button } from "@/components/ui/button"; +import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; +import { Badge } from "@/components/ui/badge"; +import { + ArrowRight, Palette, Code, Megaphone, Search, Smartphone, Cloud, + CheckCircle2, Check, X +} from "lucide-react"; +import Header from "@/components/Header"; +import Footer from "@/components/Footer"; +import { useSaasMutation } from "@/hooks/use-tygarun"; + +const serviceDetails = [ + { + icon: Palette, + title: "", + desc: "We craft compelling visual identities that resonate with your audience and set you apart from competitors. Our design team blends aesthetics with strategy.", + bullets: ["Logo & visual identity systems", "UI/UX design & prototyping", "Design system creation", "Creative direction & art direction"], + gradient: "from-violet-400 to-indigo-500", + }, + { + icon: Code, + title: "", + desc: "From responsive websites to complex web applications, we build performant digital experiences using cutting-edge technologies and best practices.", + bullets: ["Custom website development", "Progressive web applications", "E-commerce platforms", "API development & integration"], + gradient: "from-sky-400 to-blue-500", + }, + { + icon: Megaphone, + title: "", + desc: "Data-driven marketing strategies that amplify your reach, engage your audience, and convert visitors into loyal customers across all channels.", + bullets: ["Social media management", "PPC & paid advertising", "Content marketing strategy", "Email marketing automation"], + gradient: "from-rose-400 to-pink-500", + }, + { + icon: Search, + title: "", + desc: "Dominate search rankings with technical SEO, strategic keyword targeting, and comprehensive analytics that reveal actionable insights.", + bullets: ["Technical SEO audits", "Keyword research & strategy", "Analytics dashboard setup", "Conversion rate optimization"], + gradient: "from-emerald-400 to-teal-500", + }, + { + icon: Smartphone, + title: "", + desc: "Native and cross-platform mobile applications engineered for performance, designed for delight, and built to scale with your growing user base.", + bullets: ["iOS & Android development", "Cross-platform (React Native)", "App store optimization", "Push notifications & analytics"], + gradient: "from-amber-400 to-orange-500", + }, + { + icon: Cloud, + title: "", + desc: "Reliable, scalable cloud infrastructure and automated deployment pipelines that keep your applications running smoothly around the clock.", + bullets: ["Cloud architecture design", "CI/CD pipeline setup", "Container orchestration", "Monitoring & incident response"], + gradient: "from-cyan-400 to-blue-500", + }, +]; + +const pricingPlans = [ + { + name: "Starter", + price: "$2,500", + period: "/month", + desc: "Perfect for small businesses getting started with digital.", + features: [ + { text: "Brand identity design", included: true }, + { text: "Responsive website (5 pages)", included: true }, + { text: "Basic SEO setup", included: true }, + { text: "Monthly analytics report", included: true }, + { text: "Social media management", included: false }, + { text: "Dedicated project manager", included: false }, + ], + popular: false, + }, + { + name: "Growth", + price: "$5,000", + period: "/month", + desc: "For growing companies ready to scale their digital presence.", + features: [ + { text: "Full brand & design system", included: true }, + { text: "Custom web application", included: true }, + { text: "Advanced SEO & analytics", included: true }, + { text: "Weekly analytics reports", included: true }, + { text: "Social media management", included: true }, + { text: "Dedicated project manager", included: true }, + ], + popular: true, + }, + { + name: "Enterprise", + price: "$12,000", + period: "/month", + desc: "Full-service engagement for enterprise-level organizations.", + features: [ + { text: "Complete digital transformation", included: true }, + { text: "Multi-platform development", included: true }, + { text: "Enterprise SEO & marketing", included: true }, + { text: "Real-time analytics dashboard", included: true }, + { text: "Full marketing team access", included: true }, + { text: "24/7 priority support", included: true }, + ], + popular: false, + }, +]; + +export default function ServicesPage() { + const { mutate: startCheckout, loading: checkoutBusy } = useSaasMutation("billing", "/checkout"); + + const handleCheckout = async (plan) => { + const amount = Number(String(plan.price).replace(/[^0-9]/g, "")) * 100; + try { + const res = await startCheckout({ plan: plan.name.toLowerCase(), amount, interval: "month" }); + if (res?.url) window.location.href = res.url; + else toast.success("Starting your " + plan.name + " plan..."); + } catch (err) { + toast.error("Checkout failed. Please try again."); + } + }; + + return ( +
+
+ + {/* ── HERO ── */} +
+
+

+ Our Services +

+

+ Comprehensive digital solutions designed to elevate your brand and accelerate your business growth. +

+
+
+ + {/* ── SERVICE DETAILS ── */} +
+
+ {serviceDetails.map((service, i) => ( +
+
+
+ +
+

{service.title}

+

{service.desc}

+
    + {service.bullets.map((bullet, j) => ( +
  • + + {bullet} +
  • + ))} +
+ +
+
+
+
+
+
+
+
+
+ ))} +
+
+ + {/* ── PRICING ── */} +
+
+
+

Simple, Transparent Pricing

+

Choose the plan that fits your needs. Scale up anytime as your business grows.

+
+
+ {pricingPlans.map((plan, i) => ( + + {plan.popular && ( + + Most Popular + + )} + + {plan.name} +
+ {plan.price} + {plan.period} +
+

{plan.desc}

+
+ +
    + {plan.features.map((f, j) => ( +
  • + {f.included ? ( + + ) : ( + + )} + {f.text} +
  • + ))} +
+ +
+
+ ))} +
+
+
+ +
+ ); +} \ No newline at end of file