React · @dev.icons/react
Elementary React icon component
elementary OS is a Linux distribution focused on simplicity, privacy, and a polished desktop experience.
Install
npm install @dev.icons/react Import
import { Elementary } from "@dev.icons/react"; Render
<Elementary size={32} /> Props
<Elementary /> renders an inline <svg>. It
accepts every SVG attribute plus these props:
| Prop | Type | Default | What it does |
|---|---|---|---|
size | number | string | "1em" | Sets width and height, so the icon scales with the surrounding text by default. |
color | string | "currentColor" | Fill for monochrome icons. Color icons keep their brand colors. |
alt | string | none | Accessible name, rendered as an SVG <title>. |
mirrored | boolean | false | Flips the icon horizontally. |
Size, color and accessibility
<Elementary size={48} alt="Elementary logo" className="shrink-0" /> Monochrome Elementary icon
The /mono entry point exports a single-color version that
follows currentColor, so it inherits your text color in
light and dark themes.
import { Elementary } from "@dev.icons/react/mono";
<Elementary color="var(--text-muted)" /> TypeScript and Server Components
Components are typed and have no hooks, so they render in React Server Components, the Next.js app router and any SSR setup. Named imports keep the bundle to the icons you use.
import type { ComponentProps } from "react";
import { Elementary } from "@dev.icons/react";
type LogoProps = ComponentProps<typeof Elementary>;
export function StackLogo(props: LogoProps) {
return <Elementary size={24} alt="Elementary" {...props} />;
}