CRM_Data_Visualization_Component

수채화/예술적 스타일, 단색 색 구성표 및 다크 모드를 지원하는 복잡하고 반응이 빠른 CRM 데이터 시각화 구성 요소입니다. 비즈니스 도구를 위해 설계되었습니다.

미리 보기

HTML 코드

<div class="p-4 sm:p-6 md:p-8 bg-gradient-to-br from-gray-50 to-gray-200 dark:from-gray-900 dark:to-gray-800 font-sans text-gray-800 dark:text-gray-200 min-h-screen">

  <!-- Header Section -->
  <div class="flex flex-col sm:flex-row items-start sm:items-center justify-between mb-8 sm:mb-10">
    <h1 class="text-3xl sm:text-4xl font-extrabold text-gray-900 dark:text-gray-100 leading-tight mb-2 sm:mb-0">
      Customer Insights Dashboard
    </h1>
    <div class="flex items-center space-x-3">
      <div class="relative">
        <input type="date" class="block w-full px-4 py-2 mt-1 border border-gray-300 dark:border-gray-700 rounded-lg shadow-sm focus:ring-blue-500 focus:border-blue-500 bg-white dark:bg-gray-700 text-gray-700 dark:text-gray-200">
      </div>
      <button class="px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white font-semibold rounded-lg shadow-md transition duration-300 ease-in-out">
        Export Data
      </button>
    </div>
  </div>

  <!-- Main Grid Layout -->
  <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 sm:gap-8">

    <!-- Sales Overview Card -->
    <div class="col-span-1 lg:col-span-2 bg-white dark:bg-gray-850 rounded-2xl shadow-xl overflow-hidden p-6 relative group transform hover:scale-[1.005] transition-all duration-300 ease-in-out">
      <div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/clean-gray-paper.png')] opacity-10 dark:opacity-5 mix-blend-multiply pointer-events-none"></div>
      <h2 class="text-2xl font-bold mb-4 text-gray-900 dark:text-gray-100">Total Sales Performance</h2>
      <div class="flex flex-col md:flex-row items-center justify-between mb-6">
        <div class="text-5xl font-extrabold text-blue-600 dark:text-blue-400 leading-none mb-4 md:mb-0">$12,450k</div>
        <div class="flex items-center text-green-500 dark:text-green-400 text-lg font-semibold">
          <svg class="w-6 h-6 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
            <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8L11 2m7 17a3 3 0 01-6 0h-1m4 0a3 3 0 01-6 0m-4 0a3 3 0 01-6 0h1m4 0a3 3 0 01-6 0h-1m4 0a3 3 0 01-6 0"></path>
          </svg>
          +15.2% <span class="text-gray-500 dark:text-gray-400 text-sm ml-1">vs last month</span>
        </div>
      </div>
      <!-- Placeholder for a complex sales chart - usually an SVG or JS canvas -->
      <div class="w-full h-64 bg-gradient-to-r from-blue-100 to-blue-200 dark:from-blue-700 dark:to-blue-800 rounded-lg flex items-center justify-center text-gray-600 dark:text-gray-300 italic text-sm border border-blue-300 dark:border-blue-600 shadow-inner overflow-hidden relative">
        <div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/brushed-alum.png')] opacity-10 dark:opacity-5 mix-blend-multiply pointer-events-none"></div>
        Sales Trend Over Time (Chart Placeholder)
        <div class="w-full h-full absolute inset-0 bg-gradient-to-t from-transparent to-white/5 dark:to-black/5"></div>
      </div>
    </div>

    <!-- Customer Satisfaction Card -->
    <div class="bg-white dark:bg-gray-850 rounded-2xl shadow-xl overflow-hidden p-6 relative group transform hover:scale-[1.005] transition-all duration-300 ease-in-out">
      <div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/clean-gray-paper.png')] opacity-10 dark:opacity-5 mix-blend-multiply pointer-events-none"></div>
      <h2 class="text-2xl font-bold mb-4 text-gray-900 dark:text-gray-100">Customer Satisfaction (CSAT)</h2>
      <div class="flex flex-col items-center justify-center h-48">
        <div class="relative w-36 h-36 border-4 border-blue-300 dark:border-blue-600 rounded-full flex items-center justify-center font-extrabold text-5xl text-blue-600 dark:text-blue-400 bg-blue-50 dark:bg-blue-900/20">
          88<span class="text-2xl">%</span>
          <div class="absolute inset-0 rounded-full border-4 border-t-blue-500 dark:border-t-blue-400 animate-spin-slow" style="clip-path: polygon(50% 0%, 50% 100%, 100% 100%, 100% 0%);"></div>
          <div class="absolute inset-0 rounded-full border-4 border-blue-100 dark:border-blue-800"></div>
        </div>
        <p class="mt-4 text-lg text-gray-600 dark:text-gray-300">Excellent</p>
      </div>
      <div class="mt-4 text-sm text-gray-500 dark:text-gray-400">
        Based on 1,234 recent responses.
      </div>
    </div>

    <!-- Leads by Source Card -->
    <div class="bg-white dark:bg-gray-850 rounded-2xl shadow-xl overflow-hidden p-6 relative group transform hover:scale-[1.005] transition-all duration-300 ease-in-out">
      <div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/clean-gray-paper.png')] opacity-10 dark:opacity-5 mix-blend-multiply pointer-events-none"></div>
      <h2 class="text-2xl font-bold mb-4 text-gray-900 dark:text-gray-100">Leads by Source</h2>
      <div class="space-y-4">
        <div class="flex items-center justify-between">
          <span class="text-lg">Organic Search</span>
          <div class="flex items-center">
            <div class="w-24 h-3 bg-blue-200 dark:bg-blue-700 rounded-full relative mr-2">
              <div class="absolute h-full bg-blue-600 dark:bg-blue-400 rounded-full w-[70%]"></div>
            </div>
            <span class="font-semibold text-blue-600 dark:text-blue-400">70%</span>
          </div>
        </div>
        <div class="flex items-center justify-between">
          <span class="text-lg">Social Media</span>
          <div class="flex items-center">
            <div class="w-24 h-3 bg-blue-200 dark:bg-blue-700 rounded-full relative mr-2">
              <div class="absolute h-full bg-blue-600 dark:bg-blue-400 rounded-full w-[45%]"></div>
            </div>
            <span class="font-semibold text-blue-600 dark:text-blue-400">45%</span>
          </div>
        </div>
        <div class="flex items-center justify-between">
          <span class="text-lg">Referral</span>
          <div class="flex items-center">
            <div class="w-24 h-3 bg-blue-200 dark:bg-blue-700 rounded-full relative mr-2">
              <div class="absolute h-full bg-blue-600 dark:bg-blue-400 rounded-full w-[28%]"></div>
            </div>
            <span class="font-semibold text-blue-600 dark:text-blue-400">28%</span>
          </div>
        </div>
        <div class="flex items-center justify-between">
          <span class="text-lg">Paid Ads</span>
          <div class="flex items-center">
            <div class="w-24 h-3 bg-blue-200 dark:bg-blue-700 rounded-full relative mr-2">
              <div class="absolute h-full bg-blue-600 dark:bg-blue-400 rounded-full w-[15%]"></div>
            </div>
            <span class="font-semibold text-blue-600 dark:text-blue-400">15%</span>
          </div>
        </div>
      </div>
    </div>

    <!-- Recent Activities Feed Card -->
    <div class="col-span-1 md:col-span-2 bg-white dark:bg-gray-850 rounded-2xl shadow-xl overflow-hidden p-6 relative group transform hover:scale-[1.005] transition-all duration-300 ease-in-out">
      <div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/clean-gray-paper.png')] opacity-10 dark:opacity-5 mix-blend-multiply pointer-events-none"></div>
      <h2 class="text-2xl font-bold mb-4 text-gray-900 dark:text-gray-100">Recent Customer Activities</h2>
      <div class="space-y-5 max-h-96 overflow-y-auto pr-2 scrollbar-thumb-blue-400 scrollbar-track-blue-100 dark:scrollbar-thumb-blue-600 dark:scrollbar-track-blue-900 scrollbar-thin">

        <!-- Activity Item 1 -->
        <div class="flex items-start">
          <img class="w-10 h-10 rounded-full mr-4 object-cover border-2 border-blue-300 dark:border-blue-600 shadow-sm" src="https://randomuser.me/api/portraits/women/15.jpg" alt="Avatar">
          <div class="flex-1">
            <p class="text-gray-800 dark:text-gray-200"><span class="font-semibold text-blue-600 dark:text-blue-400">Jane Doe</span> updated <span class="font-semibold">Service Request #3456</span> status to <span class="font-semibold text-green-600 dark:text-green-400">'Resolved'</span>.
            </p>
            <p class="text-sm text-gray-500 mt-1 dark:text-gray-400">2 hours ago</p>
          </div>
        </div>

        <!-- Activity Item 2 -->
        <div class="flex items-start">
          <img class="w-10 h-10 rounded-full mr-4 object-cover border-2 border-blue-300 dark:border-blue-600 shadow-sm" src="https://randomuser.me/api/portraits/men/24.jpg" alt="Avatar">
          <div class="flex-1">
            <p class="text-gray-800 dark:text-gray-200"><span class="font-semibold text-blue-600 dark:text-blue-400">John Smith</span> added a new prospect <span class="font-semibold">'Acme Corp'</span> to sales pipeline.
            </p>
            <p class="text-sm text-gray-500 mt-1 dark:text-gray-400">Yesterday</p>
          </div>
        </div>

        <!-- Activity Item 3 -->
        <div class="flex items-start">
          <img class="w-10 h-10 rounded-full mr-4 object-cover border-2 border-blue-300 dark:border-blue-600 shadow-sm" src="https://randomuser.me/api/portraits/women/33.jpg" alt="Avatar">
          <div class="flex-1">
            <p class="text-gray-800 dark:text-gray-200"><span class="font-semibold text-blue-600 dark:text-blue-400">Sarah Lee</span> sent a marketing email campaign to <span class="font-semibold">'New Leads'</span> segment.
            </p>
            <p class="text-sm text-gray-500 mt-1 dark:text-gray-400">3 days ago</p>
          </div>
        </div>

        <!-- Activity Item 4 -->
        <div class="flex items-start">
          <img class="w-10 h-10 rounded-full mr-4 object-cover border-2 border-blue-300 dark:border-blue-600 shadow-sm" src="https://randomuser.me/api/portraits/men/45.jpg" alt="Avatar">
          <div class="flex-1">
            <p class="text-gray-800 dark:text-gray-200"><span class="font-semibold text-blue-600 dark:text-blue-400">David Kim</span> closed a deal with <span class="font-semibold">'Global Solutions Ltd.'</span> worth <span class="font-semibold text-blue-600 dark:text-blue-400">$8,500</span>.
            </p>
            <p class="text-sm text-gray-500 mt-1 dark:text-gray-400">4 days ago</p>
          </div>
        </div>

        <!-- Activity Item 5 -->
        <div class="flex items-start">
          <img class="w-10 h-10 rounded-full mr-4 object-cover border-2 border-blue-300 dark:border-blue-600 shadow-sm" src="https://randomuser.me/api/portraits/women/5.jpg" alt="Avatar">
          <div class="flex-1">
            <p class="text-gray-800 dark:text-gray-200"><span class="font-semibold text-blue-600 dark:text-blue-400">Emily Chen</span> scheduled a follow-up call with <span class="font-semibold">'Innovatech'</span> for next Tuesday.
            </p>
            <p class="text-sm text-gray-500 mt-1 dark:text-gray-400">5 days ago</p>
          </div>
        </div>
      </div>
    </div>

    <!-- Top Performing Campaigns Card -->
    <div class="bg-white dark:bg-gray-850 rounded-2xl shadow-xl overflow-hidden p-6 relative group transform hover:scale-[1.005] transition-all duration-300 ease-in-out">
      <div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/clean-gray-paper.png')] opacity-10 dark:opacity-5 mix-blend-multiply pointer-events-none"></div>
      <h2 class="text-2xl font-bold mb-4 text-gray-900 dark:text-gray-100">Top Performing Campaigns</h2>
      <div class="space-y-4">
        <div class="flex items-center justify-between">
          <span class="text-lg">Q4 Marketing Blitz</span>
          <span class="font-semibold text-blue-600 dark:text-blue-400">+22% ROI</span>
        </div>
        <div class="flex items-center justify-between">
          <span class="text-lg">New Product Launch</span>
          <span class="font-semibold text-blue-600 dark:text-blue-400">+18% ROI</span>
        </div>
        <div class="flex items-center justify-between">
          <span class="text-lg">Holiday Sale 2023</span>
          <span class="font-semibold text-blue-600 dark:text-blue-400">+15% ROI</span>
        </div>
        <div class="flex items-center justify-between">
          <span class="text-lg">Customer Retention</span>
          <span class="font-semibold text-blue-600 dark:text-blue-400">+10% ROI</span>
        </div>
      </div>
    </div>

    <!-- Customer Churn Rate Card -->
    <div class="bg-white dark:bg-gray-850 rounded-2xl shadow-xl overflow-hidden p-6 relative group transform hover:scale-[1.005] transition-all duration-300 ease-in-out">
      <div class="absolute inset-0 bg-[url('https://www.transparenttextures.com/patterns/clean-gray-paper.png')] opacity-10 dark:opacity-5 mix-blend-multiply pointer-events-none"></div>
      <h2 class="text-2xl font-bold mb-4 text-gray-900 dark:text-gray-100">Customer Churn Rate</h2>
      <div class="flex flex-col items-center justify-center h-48">
        <div class="text-5xl font-extrabold text-red-600 dark:text-red-400 leading-none mb-2">3.8<span class="text-2xl">%</span></div>
        <p class="text-lg text-gray-600 dark:text-gray-300">Monthly Churn</p>
        <p class="mt-2 text-sm text-gray-500 dark:text-gray-400">Target: <span class="font-semibold">3.0%</span></p>
      </div>
    </div>

  </div>

</div>

<!-- To make the scrollbar styled, you might need to add this to your Tailwind config plugins or a custom CSS: -->
<!-- @layer components {
  .scrollbar-thin {
    scrollbar-width: thin;
    scrollbar-color: var(--tw-blue-400) var(--tw-blue-100);
  }
  .scrollbar-thumb-blue-400 {
    scrollbar-color: var(--tw-blue-400) var(--tw-blue-100);
  }
  .dark .scrollbar-thumb-blue-600 {
    scrollbar-color: var(--tw-blue-600) var(--tw-blue-900);
  }
  /* For Webkit browsers */
  .scrollbar-thin::-webkit-scrollbar {
    width: 8px;
  }
  .scrollbar-thin::-webkit-scrollbar-track {
    background: theme('colors.blue.100');
  }
  .dark .scrollbar-thin::-webkit-scrollbar-track {
    background: theme('colors.blue.900');
  }
  .scrollbar-thin::-webkit-scrollbar-thumb {
    background-color: theme('colors.blue.400');
    border-radius: 20px;
    border: 2px solid theme('colors.blue.100');
  }
  .dark .scrollbar-thin::-webkit-scrollbar-thumb {
    background-color: theme('colors.blue.600');
    border: 2px solid theme('colors.blue.900');
  }
}

@keyframes spin-slow {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.animate-spin-slow {
  animation: spin-slow 3s linear infinite;
}
-->

관련 구성 요소

Luxury_Premium_Grayscale_Dating_Social_Data_Visualization_Component

데이트 및 소셜 플랫폼을 위해 설계된 우아하고 정교한 데이터 시각화 구성 요소로, 그레이스케일 색 구성표와 다크 모드를 지원하는 반응형 레이아웃을 특징으로 합니다. 사용자 통계 및 연결 메트릭을 표시합니다.

열다

Art Deco Data Visualization 구성 요소

컨설팅 서비스를 위한 복잡하고 반응이 빠른 아르데코 스타일의 데이터 시각화 구성 요소로, 기하학적 패턴과 고급스러운 보라색/보라색 색 구성표를 특징으로 합니다. 다크 모드 지원이 포함됩니다.

열다

Luxury_Premium_Crypto_Stat_Card

보석 색조, 반응형 디자인 및 다크 모드 지원을 갖춘 단순하고 우아한 암호화/블록체인 통계 카드로 고급 및 프리미엄 애플리케이션에 적합합니다.

열다