VibeCoderzVibeCoderz
All Prompts
AI Budget Assistant Hero Section with Chart preview
hero sectionfeaturetailwindchart.jsfintechlandinganimatedresponsivecta

AI Budget Assistant Hero Section with Chart

Адаптивная секция "Hero" для финтех-сервиса с AI-помощником по бюджету. Отображает маркетинговый текст и CTA, график бюджета.

Prompt

<section class="sm:px-8 sm:mt-32 [animation:fadeSlideIn_0.8s_ease-out_0.1s_both] animate-on-scroll animate max-w-7xl mt-32 mr-auto ml-auto pr-6 pl-6">
  <div class="grid grid-cols-1 lg:grid-cols-12 lg:gap-16 bg-gradient-to-br from-gray-500/10 via-gray-500/0 to-gray-500/10 rounded-3xl pt-8 pr-8 pb-8 pl-8 gap-x-y-12 gap-y-12 items-center" style="position: relative; --border-gradient: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0)); --border-radius-before: 24px">
    <!-- Left: Content -->
    <div class="lg:col-span-6">
      <span class="inline-flex items-center gap-2 text-xs font-medium text-emerald-300 tracking-tight font-geist bg-emerald-600/10 rounded-full ring-emerald-500/30 ring-1 pt-1.5 pr-4 pb-1.5 pl-4">SMART AI FEATURE</span>

      <h2 class="sm:text-5xl lg:text-6xl text-4xl font-light text-white tracking-tight font-geist mt-6">Meet Your AI Budget Assistant</h2>

      <p class="mt-6 text-lg leading-8 font-geist text-neutral-300">
        Plan smarter with predictive AI that tracks your spending, forecasts savings, and helps you make better
        financial decisions effortlessly.
      </p>

      <ul class="mt-6 space-y-4">
        <li class="flex items-center gap-3 text-base sm:text-lg font-geist text-neutral-300">
          <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" class="shrink-0 text-emerald-400" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round">
            <path d="M20 6 9 17l-5-5" class=""></path>
          </svg>
          Predict Monthly Expenses
        </li>
        <li class="flex items-center gap-3 text-base sm:text-lg font-geist text-neutral-300">
          <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" class="shrink-0 text-emerald-400" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round">
            <path d="M20 6 9 17l-5-5" class=""></path>
          </svg>
          Optimize Saving Strategies
        </li>
      </ul>

      <div class="mt-8">
        <a href="#" class="inline-flex items-center justify-center rounded-full px-6 sm:px-8 py-3.5 text-sm sm:text-base font-medium tracking-tight ring-1 font-geist text-white ring-emerald-400/30" style="background: linear-gradient(135deg, rgb(16,185,129) 0%, rgb(5,150,105) 100%);">
          Try It Now
        </a>
      </div>
    </div>

    <!-- Right: Chart Card -->
    <div class="lg:col-span-6">
      <div class="overflow-visible max-h-fit border rounded-2xl pt-4 pr-4 pb-8 pl-4 relative bg-black/40 border-white/10">

        <h3 class="text-lg font-semibold tracking-tight mb-2 font-geist">AI Insights Dashboard</h3>
        <p class="text-sm mb-4 font-geist text-gray-300">
          Visualize your expenses, track habits, and uncover patterns that help improve your financial health.
        </p>

        <div class="relative rounded-xl border ring-1 overflow-hidden p-4 sm:p-6 bg-neutral-900/60 border-white/10 ring-white/5">

          <!-- Connectors -->
          <div class="sm:left-36 sm:right-36 z-0 flex flex-col gap-2 pointer-events-none absolute top-0 right-28 bottom-0 left-28 items-stretch justify-center">
            <div class="h-px bg-gradient-to-r from-transparent to-transparent relative overflow-hidden via-emerald-400/80">
              <div class="absolute inset-0 bg-gradient-to-r h-full animate-pulse from-emerald-400 to-lime-400" style="animation: flowLeft 2s ease-in-out infinite; transform: translateX(-100%);"></div>
            </div>
            <div class="h-px bg-gradient-to-r from-transparent to-transparent relative overflow-hidden via-emerald-400/60">
              <div class="absolute inset-0 bg-gradient-to-r h-full from-emerald-400 to-lime-400" style="animation: flowLeft 2s ease-in-out infinite 0.3s; transform: translateX(-100%);"></div>
            </div>
            <div class="h-px bg-gradient-to-r from-transparent to-transparent relative overflow-hidden via-emerald-400/40">
              <div class="absolute inset-0 bg-gradient-to-r h-full from-emerald-400 to-lime-400" style="animation: flowLeft 2s ease-in-out infinite 0.6s; transform: translateX(-100%);"></div>
            </div>
          </div>

          <!-- Nodes -->
          <div class="z-10 flex relative items-center justify-between">
            <!-- Left: AI Core -->
            <div class="flex flex-col items-center gap-2">
              <div class="relative w-24 h-24 sm:w-28 sm:h-28 rounded-xl border ring-1 backdrop-blur-sm overflow-hidden border-white/10 bg-neutral-900/70 ring-white/10">
                <div class="absolute -left-4 top-2 w-20 h-20 rounded-full bg-gradient-to-tr from-emerald-500/70 to-lime-500/40 blur-2xl">
                </div>
                <div class="absolute left-6 top-1/2 -translate-y-1/2 w-14 h-14 rounded-full bg-gradient-to-tr to-emerald-500/30 blur-xl from-lime-400/70">
                </div>
                <div class="absolute right-3 bottom-3 w-8 h-8 rounded-full bg-gradient-to-tr to-transparent blur-lg from-emerald-300/60">
                </div>
                <div class="absolute inset-0 bg-[url(https://hoirqrkdgbmvpwutwuwj.supabase.co/storage/v1/object/public/assets/assets/7cb11911-53c5-45cc-a756-9dbe2010e635_320w.jpg)] bg-cover ring-1 rounded-xl ring-white/5">
                </div>
              </div>
              <span class="text-xs font-geist text-neutral-300">AI Core</span>
            </div>

            <!-- Animated Connectors -->
            <div class="sm:left-36 sm:right-36 z-0 flex flex-col gap-2 pointer-events-none absolute top-0 right-28 bottom-0 left-28 items-stretch justify-center">
              <div class="h-px bg-gradient-to-r from-transparent to-transparent relative overflow-hidden via-emerald-400/80">
                <div class="absolute inset-0 bg-gradient-to-r h-full animate-pulse from-emerald-400 to-lime-400" style="animation: flowLeft 2s ease-in-out infinite; transform: translateX(-100%);"></div>
              </div>
              <div class="h-px bg-gradient-to-r from-transparent to-transparent relative overflow-hidden via-emerald-400/60">
                <div class="absolute inset-0 bg-gradient-to-r h-full from-emerald-400 to-lime-400" style="animation: flowLeft 2s ease-in-out infinite 0.3s; transform: translateX(-100%);"></div>
              </div>
              <div class="h-px bg-gradient-to-r from-transparent to-transparent relative overflow-hidden via-emerald-400/40">
                <div class="absolute inset-0 bg-gradient-to-r h-full from-emerald-400 to-lime-400" style="animation: flowLeft 2s ease-in-out infinite 0.6s; transform: translateX(-100%);"></div>
              </div>
            </div>

            <!-- Right: User Data -->
            <div class="flex flex-col items-center gap-2">
              <div class="relative w-24 h-24 sm:w-28 sm:h-28 rounded-xl border ring-1 backdrop-blur-sm overflow-hidden border-white/10 bg-neutral-900/70 ring-white/10">
                <div class="absolute right-4 top-4 w-8 h-6 bg-gradient-to-br to-lime-500 from-emerald-400" style="clip-path: polygon(0% 0%, 100% 0%, 70% 100%, 0% 100%);"></div>
                <div class="absolute left-4 bottom-5 w-12 h-7 bg-gradient-to-br from-lime-500 to-emerald-500" style="clip-path: polygon(0% 0%, 100% 0%, 85% 100%, 0% 100%);"></div>
                <div class="absolute inset-0 bg-[url(https://hoirqrkdgbmvpwutwuwj.supabase.co/storage/v1/object/public/assets/assets/9f2ed82e-900a-4e17-843f-6340215c86a0_320w.jpg)] bg-cover ring-1 rounded-xl ring-white/5">
                </div>
              </div>
              <span class="text-xs font-geist text-neutral-300">User Data</span>
            </div>

            <style>
              @keyframes flowLeft {
                0% {
                  transform: translateX(-100%);
                  opacity: 0;
                }

                50% {
                  opacity: 1;
                }

                100% {
                  transform: translateX(100%);
                  opacity: 0;
                }
              }
            </style>
          </div>
        </div>
      </div>
    </div>
  </div>

  <!-- Charts -->
  <script src="https://cdn.jsdelivr.net/npm/chart.js@4.4.1/dist/chart.umd.min.js" class=""></script>
  <script class="">
    (function () {
      const el = document.getElementById('aura-growth-chart');
      if (!el) return;

      const ctx = el.getContext('2d');
      const gradient = ctx.createLinearGradient(0, 0, 0, el.height);
      gradient.addColorStop(0, 'rgba(139, 92, 246, 0.35)');
      gradient.addColorStop(1, 'rgba(139, 92, 246, 0.00)');

      const grid = 'rgba(148,163,184,0.15)';
      const label = 'rgba(226,232,240,0.8)';

      new Chart(el, {
        type: 'line',
        data: {
          labels: ['','10','20','30','40','50','60','Yesterday',''],
          datasets: [
            {
              label: 'Primary',
              data: [12,14,13,20,38,62,48,54,56],
              borderColor: '#7c3aed',
              backgroundColor: gradient,
              fill: true,
              borderWidth: 2.5,
              pointRadius: 0,
              tension: 0.35
            },
            {
              label: 'Secondary',
              data: [10,11,15,16,18,22,30,44,40],
              borderColor: 'rgba(255,255,255,0.85)',
              borderWidth: 2,
              pointRadius: 0,
              tension: 0.35
            }
          ]
        },
        options: {
          responsive: true,
          maintainAspectRatio: false,
          plugins: {
            legend: { display: false },
            tooltip: {
              enabled: true,
              backgroundColor: 'rgba(17,24,39,0.95)',
              titleColor: '#fff',
              bodyColor: '#e5e7eb',
              displayColors: false,
              padding: 10
            }
          },
          scales: {
            x: {
              grid: { color: grid, drawBorder: false },
              ticks: { color: label, maxTicksLimit: 8 }
            },
            y: {
              grid: { color: grid, drawBorder: false },
              ticks: { color: label, maxTicksLimit: 6 }
            }
          }
        }
      });
    })();
  </script>
</section>
All Prompts