From 3e49293d4a913dfe4dd0e91dfb5322e1add662a2 Mon Sep 17 00:00:00 2001 From: NemisysT Date: Wed, 8 Oct 2025 00:05:15 +0530 Subject: [PATCH 1/5] feat: Add Offers component for Writers Program UI (Issue #3071) - Modern, accessible React/TypeScript component with Tailwind CSS - Implements Keploy brand colors (orange-500 primary) - Responsive design with hover effects and ARIA attributes - Features: Compensation, Growth, Community offers - AI-assisted design with best practices documented in code comments --- components/Offers.tsx | 171 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 171 insertions(+) create mode 100644 components/Offers.tsx diff --git a/components/Offers.tsx b/components/Offers.tsx new file mode 100644 index 0000000..350adcf --- /dev/null +++ b/components/Offers.tsx @@ -0,0 +1,171 @@ +/** + * Offers Component for Keploy Writers Program + * Modern, accessible, and reusable UI component + * + * AI-Generated Design Notes: + * - Uses Tailwind CSS for styling with Keploy's brand colors + * - Implements ARIA attributes for accessibility + * - Responsive design with mobile-first approach + * - Uses modern React patterns with TypeScript + */ + +import React from 'react'; +import { CheckCircle, Gift, Zap, Users } from 'lucide-react'; + +interface Offer { + id: string; + icon: React.ReactNode; + title: string; + description: string; + benefits: string[]; + highlighted?: boolean; +} + +interface OffersProps { + className?: string; +} + +const offersData: Offer[] = [ + { + id: 'compensation', + icon: