Gabriel Dilley

Baye Hero

Component

About

I like turtles

Built with React and Tailwind. Copy the prompt and paste it into Claude Code, Cursor or Lovable: your agent adds Baye Hero to your project and fits it to your theme.

Code

How Baye Hero is used: the demo's code. The component's own source comes with a free account.

Usage.tsx

import React, { useState } from 'react';
import { motion } from 'framer-motion';

interface StatusPill {
  label: string;
  variant: 'accent' | 'muted';
}

interface BayeMLBHeroProps {
  eyebrow?: string;
  headline?: string;
  headlineAccent?: string;
  subtitle?: string;
  statusPills?: StatusPill[];
}

const BayeMLBHero: React.FC<BayeMLBHeroProps> = ({
  eyebrow = 'MLB DATA BRIEF AGENT',
  headline = 'Pre-Game Intelligence for',
  headlineAccent = 'Baye',
  subtitle = 'Real-time MLB analytics and data aggregation from verified sources',
  statusPills = [
    { label: 'MLB PRE-GAME ONLY', variant: 'accent' },
    { label: 'NO PICKS', variant: 'muted' },
    { label: 'SOURCES SHOWN', variant: 'muted' }
  ]
}) => {
  return (
    <section 
      className="relative w-full min-h-[400px] flex items-center justify-center px-6 py-16 overflow-hidden"
      style={{
        backgroundColor: '#111111',
        fontFamily: 'Inter, system-ui, -apple-system, sans-serif'
      }}
    >
      {/* Background Pattern */}
      <div 
        className="absolute inset-0 opacity-30"
        style={{
          backgroundImage: `
            linear-gradient(to right, #262626 1px, transparent 1px),
            linear-gradient(to bottom, #262626 1px, transparent 1px)
          `,
          backgroundSize: '40px 40px'
        }}
      />

      {/* Content Container */}
      <div className="relative z-10 w-full max-w-6xl mx-auto">
        <div className="flex flex-col lg:flex-row items-center lg:items-start gap-8 lg:gap-12">
          
          {/* Left Content */}
          <motion.div 
            className="flex-1 text-center lg:text-left"
            initial={{ opacity: 0, y: 20 }}
            animate={{ opacity: 1, y: 0 }}
            transition={{ duration: 0.6 }}
          >
            {/* Eyebrow */}
            <div 
              className="inline-block mb-4"
              style={{
                fontSize: '11px',
                fontWeight: 700,
                letterSpacing: '0.16em',
                color: '#ff6a00',
                textTransform: 'uppercase'
              }}
            >
              {eyebrow}
            </div>

            {/* Headline */}
            <h1 
              className="mb-4"
              style={{
                fontSize: 'clamp(28px, 5vw, 42px)',
                fontWeight: 800,
                lineHeight: 1.2,
                color: '#f6f1e8'
              }}
            >
              {headline}{' '}
              <span style={{ color: '#ff6a00' }}>{headlineAccent}</span>
            </h1>

            {/* Subtitle */}
            <p 
              className="mb-6 max-w-xl mx-auto lg:mx-0"
              style={{
                fontSize: '14px',
                lineHeight: 1.6,
                color: '#7c7468'
              }}
            >
              {subtitle}
            </p>

            {/* Status Pills - Mobile */}
            <div className="flex flex-wrap gap-2 justify-center lg:hidden">
              {statusPills.map((pill, index) => (
                <div
                  key={index}
                  className="px-3 py-1.5 rounded-full text-xs font-medium"
                  style={{
                    backgroundColor: pill.variant === 'accent' ? 'rgba(255,106,0,0.08)' : 'transparent',
                    border: `1px solid ${pill.variant === 'accent' ? 'rgba(255,106,0,0.35)' : '#262626'}`,
                    color: pill.variant === 'accent' ? '#ff6a00' : '#7c7468'
                  }}
                >
                  {pill.label}
                </div>
              ))}
            </div>
          </motion.div>

          {/* Right Content - Status Pills Desktop */}
          <motion.div 
            className="hidden lg:flex flex-col gap-3 min-w-[240px]"
            initial={{ opacity: 0, x: 20 }}
            animate={{ opacity: 1, x: 0 }}
            transition={{ duration: 0.6, delay: 0.2 }}
          >
            {statusPills.map((pill, index) => (
              <div
                key={index}
                className="px-4 py-3 rounded-lg text-sm font-medium"
                style={{
                  backgroundColor: pill.variant === 'accent' ? 'rgba(255,106,0,0.08)' : 'transparent',
                  border: `1px solid ${pill.variant === 'accent' ? 'rgba(255,106,0,0.35)' : '#262626'}`,
                  color: pill.variant === 'accent' ? '#ff6a00' : '#7c7468'
                }}
              >
                {pill.label}
              </div>
            ))}
          </motion.div>
        </div>
      </div>

      {/* Subtle Accent Line */}
      <div 
        className="absolute bottom-0 left-0 right-0 h-px"
        style={{
          background: 'linear-gradient(90deg, transparent, rgba(255,106,0,0.35), transparent)'
        }}
      />
    </section>
  );
};

export default function BayeMLBHeroDemo() {
  return (
    <div className="min-h-screen bg-[#111111]">
      <BayeMLBHero />
    </div>
  );
}