Skip to main content
Glama
feature-image-left-dark.svelte4.84 kB
<!-- Last updated: 2025-11-06T05:40:53.466Z --> <!-- @description: Feature section with a large screenshot on the left and text content with a list of features on the right, on a dark background. Based on Tailwind UI. @props: accentText: string - Small text above the main title (e.g., "Deploy faster"). title: string - The main title of the feature section. description: string - Introductory paragraph. features: Array<{ name: string, description: string, iconPathData: string }> - List of features. imageUrl: string - URL for the main image/screenshot. imageAlt: string - Alt text for the image. @theme_vars: --theme-bg-base (bg-gray-900 for this dark example) --theme-text-base (text-white) --theme-text-muted (text-gray-300) --theme-primary (text-indigo-400 for accent, text-indigo-500 for icons) --theme-border-color (ring-white/10) --theme-border-radius-xl (rounded-xl) --> <script lang="ts"> export let accentText: string = "Deploy faster"; export let title: string = "A better workflow"; export let description: string = "Lorem ipsum, dolor sit amet consectetur adipisicing elit. Maiores impedit perferendis suscipit eaque, iste dolor cupiditate blanditiis ratione."; export let features: Array<{ name: string, description: string, iconPathData: string }> = [ { name: "Push to deploy.", description: "Lorem ipsum, dolor sit amet consectetur adipisicing elit. Maiores impedit perferendis suscipit eaque, iste dolor cupiditate blanditiis ratione.", iconPathData: "M5.5 17a4.5 4.5 0 0 1-1.44-8.765 4.5 4.5 0 0 1 8.302-3.046 3.5 3.5 0 0 1 4.504 4.272A4 4 0 0 1 15 17H5.5Zm3.75-2.75a.75.75 0 0 0 1.5 0V9.66l1.95 2.1a.75.75 0 1 0 1.1-1.02l-3.25-3.5a.75.75 0 0 0-1.1 0l-3.25 3.5a.75.75 0 1 0 1.1 1.02l1.95-2.1v4.59Z" }, { name: "SSL certificates.", description: "Anim aute id magna aliqua ad ad non deserunt sunt. Qui irure qui lorem cupidatat commodo.", iconPathData: "M10 1a4.5 4.5 0 0 0-4.5 4.5V9H5a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2h-.5V5.5A4.5 4.5 0 0 0 10 1Zm3 8V5.5a3 3 0 1 0-6 0V9h6Z" }, { name: "Database backups.", description: "Ac tincidunt sapien vehicula erat auctor pellentesque rhoncus. Et magna sit morbi lobortis.", iconPathData: "M4.632 3.533A2 2 0 0 1 6.577 2h6.846a2 2 0 0 1 1.945 1.533l1.976 8.234A3.489 3.489 0 0 0 16 11.5H4c-.476 0-.93.095-1.344.267l1.976-8.234ZM4 13a2 2 0 1 0 0 4h12a2 2 0 1 0 0-4H4Zm11.24 2a.75.75 0 0 1 .75-.75H16a.75.75 0 0 1 .75.75v.01a.75.75 0 0 1-.75.75h-.01a.75.75 0 0 1-.75-.75V15Zm-2.25-.75a.75.75 0 0 0-.75.75v.01c0 .414.336.75.75.75H13a.75.75 0 0 0 .75-.75V15a.75.75 0 0 0-.75-.75h-.01Z" }, ]; export let imageUrl: string = "https://tailwindcss.com/plus-assets/img/component-images/dark-project-app-screenshot.png"; // Same image as light version, but context is dark export let imageAlt: string = "Product screenshot"; </script> <div class="overflow-hidden bg-gray-900 py-24 sm:py-32"> {/* Themeable: bg-theme-bg-base (dark variant) */} <div class="mx-auto max-w-7xl px-6 lg:px-8"> <div class="mx-auto grid max-w-2xl grid-cols-1 gap-x-8 gap-y-16 sm:gap-y-20 lg:mx-0 lg:max-w-none lg:grid-cols-2"> <div class="lg:pt-4 lg:pr-8 order-last lg:order-first"> {/* Order changed for image left */} <div class="lg:max-w-lg"> <h2 class="text-base/7 font-semibold text-indigo-400">{accentText}</h2> {/* Themeable: text-theme-primary (darker shade) */} <p class="mt-2 text-4xl font-semibold tracking-tight text-pretty text-white sm:text-5xl">{title}</p> {/* Themeable: text-theme-text-base (on dark) */} <p class="mt-6 text-lg/8 text-gray-300">{description}</p> {/* Themeable: text-theme-text-muted (on dark) */} <dl class="mt-10 max-w-xl space-y-8 text-base/7 text-gray-300 lg:max-w-none"> {/* Themeable: text-theme-text-muted (on dark) */} {#each features as feature} <div class="relative pl-9"> <dt class="inline font-semibold text-white"> {/* Themeable: text-theme-text-base (on dark) */} <svg class="absolute top-1 left-1 size-5 text-indigo-500" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"> {/* Themeable: text-theme-primary */} <path fill-rule="evenodd" d={feature.iconPathData} clip-rule="evenodd" /> </svg> {feature.name} </dt> <dd class="inline"> {feature.description}</dd> </div> {/each} </dl> </div> </div> <img src={imageUrl} alt={imageAlt} class="w-[48rem] max-w-none rounded-xl shadow-xl ring-1 ring-white/10 sm:w-[57rem] md:-ml-4 lg:-ml-0" width="2432" height="1442" /> {/* Themeable: ring-theme-border-color/10 (on dark) */} </div> </div> </div>

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CaullenOmdahl/Tailwind-Svelte-Assistant'

If you have feedback or need assistance with the MCP directory API, please join our Discord server