Ballmac UI home

Mac Icons

Resolution-independent macOS-style icons drawn in SVG and CSS: folders, documents with extension badges, drives and gradient app icons in eight theme-aware colors.

Installation

$ pnpm dlx shadcn@latest add @ballmac/mac-icons

Usage

import { FolderIcon, FileIcon, DriveIcon, AppIcon } from "@/components/ballmac/mac-icons"

The full example is in the Code tab above.

Examples

Colors and sizes

  • blue
  • teal
  • green
  • amber
  • orange
  • red
  • purple
  • graphite

API reference

<Icon>

PropTypeDefault
size

Size in pixels.

number—
tone

Color of the icon.

IconTone—

<FileIcon>

PropTypeDefault
label

Extension label drawn on the page, such as "PDF".

string—

<AppIcon>

PropTypeDefault
size

Size in pixels.

number64
tone

Background color.

IconTone"blue"
children

The glyph: an icon, letter or short text, drawn in white.

React.ReactNode—

Also accepts the standard attributes of its root element.

Accessibility

KeyAction
Screen readersIcons are aria-hidden; always label the item with text

Use with AI

<FolderIcon size tone />, <FileIcon label='PDF' tone />, <DriveIcon />, <AppIcon tone size>{glyph}</AppIcon>. tone is blue | teal | green | amber | orange | red | purple | graphite. All are decorative (aria-hidden): put the name in text next to them. With the shadcn MCP server set up (guide), ask your agent:

Add the Ballmac UI Mac Icons (@ballmac/mac-icons) to this project with the shadcn MCP, then use it where it fits.

Use it for

  • Desktop, Finder and Launchpad recreations
  • File lists that want recognisable macOS icons

Not for

  • Small UI glyphs (use lucide-react icons)

Registry JSON: https://ui.ballmac.com/r/mac-icons.json

Credits

Free to use in personal and commercial projects.

npm
None
Registry
shadcn/utils