# Vue.js Logo

> Vue.js progressive JavaScript framework logo with dark/light mode support

A shadcn/ui block from the [@elements](https://www.tryelements.dev) registry, listed on [shadcn.exchange](https://shadcn.exchange/r/elements/vuejs-logo).

- Page, with a live preview: https://shadcn.exchange/r/elements/vuejs-logo
- Screenshot: https://abzjhwgwpdpz7ua5.public.blob.vercel-storage.com/shots/elements/vuejs-logo-light-cf386d0b6b2c5822.png
- Registry item: https://www.tryelements.dev/r/vuejs-logo.json
- Categories: DevTools, logo, brand
- Listed: 2026-10-13, source last changed 2026-10-13

## Install

```bash
npx shadcn@latest add https://www.tryelements.dev/r/vuejs-logo.json
```

Run it in a project that has shadcn/ui set up. It adds the files below and installs what they depend on.

## Notes from the registry

Vue.js logo with 1 base variant (icon) and 2 modes (dark, light) = 2 total combinations. Theme-aware: automatically adapts colors when you switch themes.

## Files

### `registry/default/blocks/logos/vuejs-logo/components/logos/vuejs.tsx`

```tsx
interface LogoProps {
  className?: string;
  variant?: "icon";
  mode?: "dark" | "light";
}

const COLORS = {
  dark: "#4FC08D",
  light: "#4FC08D",
};

export function VuejsLogo({
  className,
  variant = "icon",
  mode = "dark",
}: LogoProps) {
  const color = COLORS[mode];

  return (
    <svg
      role="img"
      viewBox="0 0 24 24"
      xmlns="http://www.w3.org/2000/svg"
      className={className}
    >
      <title>Vue.js</title>
      <path
        fill={color}
        d="M24 1.61h-9.94L12 5.16 9.94 1.61H0l12 20.78ZM12 14.08 5.16 2.23h4.43L12 6.41l2.41-4.18h4.43Z"
      />
    </svg>
  );
}
```
