VibeCoderzVibeCoderz
Telegram
All Prompts
Animated Hardware Pipeline Timeline Section preview
featuresectiontimelinetailwindanimatedresponsiveworkflow

Animated Hardware Pipeline Timeline Section

Анимированная секция таймлайна для демонстрации поэтапных аппаратных или ML-пайплайнов. Идеально для технических рабочих процессов.

Prompt

<!-- Hardware Pipeline Section (drop-in, self-contained) -->
<section id="hardware-pipeline"
  class="sm:py-32 overflow-hidden border-y bg-[#0a0a0c] border-zinc-900 pt-24 pb-24 relative shadow-[inset_0_20px_40px_rgba(0,0,0,0.5),inset_0_-20px_40px_rgba(0,0,0,0.5)]">
  <style>
    /* If you already have these tactile classes globally, delete this <style> block. */
    .tactile-base {
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
      box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.55),
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        inset 0 -1px 0 rgba(0, 0, 0, 0.45);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
    }

    .tactile-inset {
      background: linear-gradient(180deg, rgba(0, 0, 0, 0.55), rgba(255, 255, 255, 0.03));
      box-shadow:
        inset 0 2px 10px rgba(0, 0, 0, 0.7),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }

    .tactile-glass {
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01));
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
      box-shadow:
        0 12px 30px rgba(0, 0, 0, 0.55),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
    }

    /* Vertical "scan" light on the center rail */
    @keyframes text-slide {
      0% {
        transform: translateY(-60%);
        opacity: 0;
      }

      20% {
        opacity: 1;
      }

      80% {
        opacity: 1;
      }

      100% {
        transform: translateY(220%);
        opacity: 0;
      }
    }
  </style>

  <div class="mx-auto max-w-7xl px-4 sm:px-6 lg:px-8">
    <div class="text-center max-w-2xl mx-auto mb-20 scroll-animate">
      <h2 class="text-3xl font-normal tracking-tight text-zinc-100">
        The hardware pipeline
      </h2>
      <p class="mt-4 text-base text-zinc-400">
        A physical approach to routing data through distributed nodes.
      </p>
    </div>

    <div class="relative max-w-3xl mx-auto scroll-animate">
      <!-- Center Rail -->
      <div
        class="absolute left-8 md:left-1/2 top-0 bottom-0 w-4 -translate-x-1/2 tactile-inset rounded-full z-0 flex justify-center py-4">
        <div class="w-1 h-full bg-zinc-800 rounded-full relative overflow-hidden">
          <div
            class="absolute top-0 left-0 w-full h-32 bg-gradient-to-b from-transparent via-indigo-500 to-transparent animate-[text-slide_3s_linear_infinite] shadow-[0_0_15px_#6366f1]">
          </div>
        </div>
      </div>

      <!-- Row 1 -->
      <div class="relative z-10 flex flex-col md:flex-row items-start md:items-center gap-8 mb-16 group pl-20 md:pl-0">
        <div class="md:hidden w-full mb-4">
          <h3 class="text-lg font-normal text-zinc-100">Data Ingestion</h3>
          <p class="text-sm text-zinc-500 mt-1">
            High-bandwidth physical uplinks pull datasets into the secure enclave.
          </p>
        </div>

        <div class="md:w-1/2 md:pr-12 md:text-right hidden md:block">
          <h3 class="text-lg font-normal text-zinc-100">Data Ingestion</h3>
          <p class="text-sm text-zinc-500 mt-1">
            High-bandwidth physical uplinks pull datasets into the secure enclave.
          </p>
        </div>

        <div
          class="absolute left-8 md:left-1/2 -translate-x-1/2 w-10 h-10 rounded-full tactile-base border border-zinc-700 flex items-center justify-center shadow-xl group-hover:scale-110 transition-transform">
          <div
            class="w-3 h-3 rounded-full bg-zinc-800 shadow-inner border border-zinc-900 group-hover:bg-zinc-300 transition-colors">
          </div>
        </div>

        <div class="md:w-1/2 md:pl-12 w-full">
          <div class="tactile-glass p-5 rounded-xl border border-zinc-800/50 flex items-center gap-4">
            <div class="w-10 h-10 rounded tactile-inset flex items-center justify-center text-zinc-400">
              <iconify-icon icon="solar:database-linear" width="20"></iconify-icon>
            </div>

            <div class="flex-1">
              <div class="h-2 w-full bg-zinc-900 rounded overflow-hidden shadow-inner">
                <div
                  class="h-full w-0 [.is-visible_&]:w-3/4 bg-zinc-600 rounded transition-all duration-[1500ms] delay-[300ms] ease-out">
                </div>
              </div>

              <div class="text-xs font-mono text-zinc-500 mt-2">
                INGEST_RATE: 400GB/s
              </div>
            </div>
          </div>
        </div>
      </div>

      <!-- Row 2 -->
      <div class="relative z-10 flex flex-col md:flex-row items-start md:items-center gap-8 mb-16 group pl-20 md:pl-0">
        <div class="md:w-1/2 md:pr-12 md:text-right w-full order-2 md:order-1 mt-4 md:mt-0">
          <div class="tactile-glass p-5 rounded-xl border border-zinc-800/50 flex items-center gap-4">
            <div class="flex-1 text-right">
              <div class="text-xs font-mono text-zinc-500 mb-2">
                TRAIN_STATUS: ACTIVE
              </div>

              <div class="flex gap-1 justify-end">
                <div
                  class="w-0 [.is-visible_&]:w-6 h-1.5 bg-indigo-500 rounded-full shadow-[0_0_8px_#6366f1] transition-all duration-500 delay-[600ms] ease-out">
                </div>
                <div
                  class="w-0 [.is-visible_&]:w-6 h-1.5 bg-indigo-500 rounded-full shadow-[0_0_8px_#6366f1] transition-all duration-500 delay-[750ms] ease-out">
                </div>
                <div
                  class="w-0 [.is-visible_&]:w-6 h-1.5 bg-zinc-800 rounded-full transition-all duration-500 delay-[900ms] ease-out">
                </div>
              </div>
            </div>

            <div class="w-10 h-10 rounded tactile-inset flex items-center justify-center text-indigo-400">
              <iconify-icon icon="solar:magic-stick-3-linear" width="20"></iconify-icon>
            </div>
          </div>
        </div>

        <div
          class="absolute left-8 md:left-1/2 -translate-x-1/2 w-10 h-10 rounded-full tactile-base border border-zinc-700 flex items-center justify-center shadow-xl group-hover:scale-110 transition-transform order-1 md:order-2">
          <div
            class="w-3 h-3 rounded-full bg-indigo-500 shadow-[0_0_10px_#6366f1] border border-zinc-900 transition-colors">
          </div>
        </div>

        <div class="md:w-1/2 md:pl-12 order-1 md:order-3 md:hidden">
          <h3 class="text-lg font-normal text-zinc-100">Distributed Training</h3>
          <p class="text-sm text-zinc-500 mt-1">
            Multi-GPU orchestration via physical NVLink bridges.
          </p>
        </div>

        <div class="md:w-1/2 md:pl-12 hidden md:block order-3">
          <h3 class="text-lg font-normal text-zinc-100">Distributed Training</h3>
          <p class="text-sm text-zinc-500 mt-1">
            Multi-GPU orchestration via physical NVLink bridges.
          </p>
        </div>
      </div>

      <!-- Row 3 -->
      <div class="relative z-10 flex flex-col md:flex-row items-start md:items-center gap-8 mb-16 group pl-20 md:pl-0">
        <div class="md:w-1/2 md:pr-12 md:text-right hidden md:block">
          <h3 class="text-lg font-normal text-zinc-100">Model Compilation</h3>
          <p class="text-sm text-zinc-500 mt-1">
            Automated ONNX/TensorRT optimization for bare-metal inference.
          </p>
        </div>

        <div
          class="absolute left-8 md:left-1/2 -translate-x-1/2 w-10 h-10 rounded-full tactile-base border border-zinc-700 flex items-center justify-center shadow-xl group-hover:scale-110 transition-transform">
          <div
            class="w-3 h-3 rounded-full bg-emerald-500 shadow-[0_0_10px_#10b981] border border-zinc-900 transition-colors">
          </div>
        </div>

        <div class="md:w-1/2 md:pl-12 w-full">
          <div class="tactile-glass p-5 rounded-xl border border-zinc-800/50 flex items-center gap-4">
            <div class="w-10 h-10 rounded tactile-inset flex items-center justify-center text-emerald-400">
              <iconify-icon icon="solar:cpu-linear" width="20"></iconify-icon>
            </div>

            <div class="flex-1">
              <div class="h-2 w-full bg-zinc-900 rounded overflow-hidden shadow-inner">
                <div
                  class="h-full w-0 [.is-visible_&]:w-2/3 bg-emerald-500 rounded shadow-[0_0_8px_#10b981] transition-all duration-[1500ms] delay-[1000ms] ease-out">
                </div>
              </div>

              <div class="text-xs font-mono text-zinc-500 mt-2">
                COMPILE_TARGET: TENSOR_RT
              </div>
            </div>
          </div>
        </div>
      </div>

      <!-- Row 4 -->
      <div class="relative z-10 flex flex-col md:flex-row items-start md:items-center gap-8 mb-16 group pl-20 md:pl-0">
        <div class="md:w-1/2 md:pr-12 md:text-right w-full order-2 md:order-1 mt-4 md:mt-0">
          <div class="tactile-glass p-5 rounded-xl border border-zinc-800/50 flex items-center gap-4">
            <div class="flex-1 text-right">
              <div class="text-xs font-mono text-zinc-500 mb-2">
                LATENCY: 12ms
              </div>

              <div class="flex gap-1 justify-end">
                <div
                  class="w-0 [.is-visible_&]:w-6 h-1.5 bg-orange-500 rounded-full shadow-[0_0_8px_#f97316] transition-all duration-500 delay-[1300ms] ease-out">
                </div>
                <div
                  class="w-0 [.is-visible_&]:w-6 h-1.5 bg-orange-500 rounded-full shadow-[0_0_8px_#f97316] transition-all duration-500 delay-[1450ms] ease-out">
                </div>
                <div
                  class="w-0 [.is-visible_&]:w-6 h-1.5 bg-orange-500 rounded-full shadow-[0_0_8px_#f97316] transition-all duration-500 delay-[1600ms] ease-out">
                </div>
              </div>
            </div>

            <div class="w-10 h-10 rounded tactile-inset flex items-center justify-center text-orange-400">
              <iconify-icon icon="solar:routing-2-linear" width="20"></iconify-icon>
            </div>
          </div>
        </div>

        <div
          class="absolute left-8 md:left-1/2 -translate-x-1/2 w-10 h-10 rounded-full tactile-base border border-zinc-700 flex items-center justify-center shadow-xl group-hover:scale-110 transition-transform order-1 md:order-2">
          <div
            class="w-3 h-3 rounded-full bg-orange-500 shadow-[0_0_10px_#f97316] border border-zinc-900 transition-colors">
          </div>
        </div>

        <div class="md:w-1/2 md:pl-12 order-1 md:order-3 md:hidden">
          <h3 class="text-lg font-normal text-zinc-100">Global Edge Routing</h3>
          <p class="text-sm text-zinc-500 mt-1">
            Weights distributed to physically adjacent NVMe storage nodes.
          </p>
        </div>

        <div class="md:w-1/2 md:pl-12 hidden md:block order-3">
          <h3 class="text-lg font-normal text-zinc-100">Global Edge Routing</h3>
          <p class="text-sm text-zinc-500 mt-1">
            Weights distributed to physically adjacent NVMe storage nodes.
          </p>
        </div>
      </div>
    </div>
  </div>

  <script>
    // Adds .is-visible when the section enters viewport, triggering your Tailwind variants:
    // w-0 -> w-3/4, w-2/3, w-6, etc via `[.is-visible_&]:...`
    document.addEventListener("DOMContentLoaded", () => {
      const section = document.querySelector("#hardware-pipeline");
      if (!section) return;

      const io = new IntersectionObserver(
        (entries) => {
          for (const entry of entries) {
            if (entry.isIntersecting) {
              section.classList.add("is-visible");
              io.disconnect(); // run once
              break;
            }
          }
        },
        { threshold: 0.25, rootMargin: "0px 0px -10% 0px" }
      );

      io.observe(section);
    });
  </script>
</section>
All Prompts