CloudflareLogo
kumo-svelte
<script lang="ts">
  import { CloudflareLogo } from 'kumo-svelte';
</script>

<CloudflareLogo class="w-72" />

Installation

Barrel

import { CloudflareLogo, PoweredByCloudflare } from 'kumo-svelte';

Granular

import { CloudflareLogo, PoweredByCloudflare } from 'kumo-svelte/components/cloudflare-logo';

Usage

<script lang="ts">  import { CloudflareLogo } from 'kumo-svelte';</script><CloudflareLogo class="w-36" />

Examples

Glyph Only

Use variant="glyph" to display just the cloud icon without the wordmark.

<script lang="ts">
  import { CloudflareLogo } from 'kumo-svelte';
</script>

<CloudflareLogo variant="glyph" class="w-24" />

Color Variants

The logo supports three color schemes: brand colors, black, and white.

<script lang="ts">
  import { CloudflareLogo } from 'kumo-svelte';
</script>

<div class="flex flex-wrap items-center gap-8">
  <CloudflareLogo class="w-28" color="color" />
  <div class="rounded-lg bg-white p-4">
    <CloudflareLogo class="w-28" color="black" />
  </div>
  <div class="rounded-lg bg-black p-4">
    <CloudflareLogo class="w-28" color="white" />
  </div>
</div>

Glyph Color Variants

<script lang="ts">
  import { CloudflareLogo } from 'kumo-svelte';
</script>

<div class="flex flex-wrap items-center gap-8">
  <CloudflareLogo variant="glyph" class="w-12" color="color" />
  <div class="rounded-lg bg-white p-4">
    <CloudflareLogo variant="glyph" class="w-12" color="black" />
  </div>
  <div class="rounded-lg bg-black p-4">
    <CloudflareLogo variant="glyph" class="w-12" color="white" />
  </div>
</div>

Sizing

Size the logo using CSS width classes. The height adjusts automatically to maintain aspect ratio.

<script lang="ts">
  import { CloudflareLogo } from 'kumo-svelte';
</script>

<div class="flex flex-wrap items-end gap-6">
  <CloudflareLogo class="w-20" />
  <CloudflareLogo class="w-28" />
  <CloudflareLogo class="w-44" />
</div>

Brand Assets Menu

Combine with DropdownMenu to create a brand assets menu. Use generateCloudflareLogoSvg() to get copy-paste ready SVG markup.

Click to open the brand assets menu
<script lang="ts">
  import { CloudflareLogo, DropdownMenu } from '$lib';
  import { ArrowSquareOut, Cloud, Code, DownloadSimple } from 'phosphor-svelte';
  import { generateCloudflareLogoSvg } from '$lib/components/cloudflare-logo';

  let copied = $state<string | null>(null);

  async function copyToClipboard(text: string, label: string) {
    await navigator.clipboard.writeText(text);
    copied = label;
    setTimeout(() => {
      copied = null;
    }, 2000);
  }
</script>

<div class="flex items-center gap-4">
  <DropdownMenu>
    <DropdownMenu.Trigger>
      <button
        type="button"
        class="flex items-center gap-2 rounded-lg bg-black px-4 py-3 text-white transition-opacity hover:opacity-80"
      >
        <CloudflareLogo variant="glyph" color="white" class="w-8" />
        <span class="font-medium">Logo</span>
      </button>
    </DropdownMenu.Trigger>
    <DropdownMenu.Content>
      <DropdownMenu.Item
        icon={Cloud}
        onSelect={() => copyToClipboard(generateCloudflareLogoSvg({ variant: 'glyph' }), 'glyph')}
      >
        {copied === 'glyph' ? 'Copied!' : 'Copy logo as SVG'}
      </DropdownMenu.Item>
      <DropdownMenu.Item
        icon={Code}
        onSelect={() => copyToClipboard(generateCloudflareLogoSvg({ variant: 'full' }), 'full')}
      >
        {copied === 'full' ? 'Copied!' : 'Copy full logo as SVG'}
      </DropdownMenu.Item>
      <DropdownMenu.Item
        icon={DownloadSimple}
        onSelect={() => window.open('https://www.cloudflare.com/press-kit/', '_blank', 'noopener')}
      >
        Download brand assets
      </DropdownMenu.Item>
      <DropdownMenu.Separator />
      <DropdownMenu.Item
        icon={ArrowSquareOut}
        onSelect={() => window.open('https://www.cloudflare.com/brand-assets/', '_blank', 'noopener')}
      >
        Visit brand guidelines
      </DropdownMenu.Item>
    </DropdownMenu.Content>
  </DropdownMenu>

  <span class="text-sm text-kumo-subtle">Click to open the brand assets menu</span>
</div>

PoweredByCloudflare

A pre-built "Powered by Cloudflare" badge component for footers and attribution.

Basic Usage

<script lang="ts">
  import { PoweredByCloudflare } from 'kumo-svelte';
</script>

<PoweredByCloudflare />

Color Variants

<script lang="ts">
  import { PoweredByCloudflare } from 'kumo-svelte';
</script>

<div class="flex flex-wrap items-center gap-4">
  <PoweredByCloudflare />
  <PoweredByCloudflare color="black" />
  <div class="rounded-lg bg-black p-3">
    <PoweredByCloudflare color="white" />
  </div>
</div>
<script lang="ts">
  import { PoweredByCloudflare } from '$lib/components/cloudflare-logo';
</script>

<footer class="flex w-full items-center justify-between rounded-lg border border-kumo-hairline bg-kumo-elevated px-6 py-4">
  <span class="text-sm text-kumo-subtle">&copy; 2026 Your Company. All rights reserved.</span>
  <PoweredByCloudflare />
</footer>

SVG Generation

Use generateCloudflareLogoSvg() to get copy-paste ready SVG markup for non-React contexts.

import { generateCloudflareLogoSvg } from "kumo-svelte";// Generate glyph SVG (cloud only)const glyphSvg = generateCloudflareLogoSvg({ variant: "glyph" });// Generate full logo SVGconst fullSvg = generateCloudflareLogoSvg({ variant: "full" });// Generate black logoconst blackSvg = generateCloudflareLogoSvg({ color: "black" });// Copy to clipboardawait navigator.clipboard.writeText(  generateCloudflareLogoSvg({ variant: "glyph", color: "color" }),);

API Reference

CloudflareLogo extends SVGSVGElement and accepts all standard SVG attributes.

PropTypeDefaultDescription
variant"glyph" | "full""full"Logo variant. glyph shows just the cloud icon, full includes the wordmark.
color"color" | "black" | "white""color"Color scheme. color uses brand colors, black and white are solid.
classstring-CSS classes for sizing (e.g., w-36). Height adjusts automatically.

CloudflareLogo.PoweredByCloudflare

Extends HTMLAnchorElement and accepts all standard anchor attributes.

PropTypeDefaultDescription
color"color" | "black" | "white""color"Color scheme for the logo and text.
hrefstring"https://www.cloudflare.com"Link destination. Opens in a new tab by default.