File Icons for React.
930 free icons by John Gardner, ISC. Search by name or meaning, then open an icon to copy it as SVG or React, or install it.
File Icons
Or describe it. With Pro, your AI agent picks the icon you describe from File Icons and installs it as a React component.
Get ProLibraries
Other popular libraries
The sets shadcn/ui projects reach for first, each with its license.
Pricing
File Icons MCP, with Pro
Your agent searches all 930 File Icons and installs the one you describe. The MCP comes with every Pro plan, with 6,000+ blocks and 14 premium templates.
4.9/5 out of 5 · 150+ reviewsfrom 150+ founders and developers.
- Secure checkout via Stripe
- Code lives in your repo
- Keep what you've shipped if you cancel
- License terms
FAQ
Frequently asked questions
About File Icons: how many there are, how to use them, and their license.
File Icons has 930 icons by John Gardner, drawn on a 512 × 512 grid.
John Gardner made File Icons, released under ISC.
File Icons is in the Programming group on the libraries page. Sets like it are VSCode Icons, Material Icon Theme and Devicon. Open each to compare the grid, the style and the license before you pick one.
Search by name or by what an icon shows: each one is tagged with words like "money" or "navigation", so you find it without knowing its exact name. Search runs inside File Icons, over its 930 icons.
Every File Icons icon's page has an Other libraries section with the same icon drawn by other sets, and its tags link to every library that draws the same subject. Use them to compare File Icons with the rest.
Open an icon, then copy it as a typed React component or as SVG for any framework or design tool. Signed in, you can also install it with one shadcn CLI command.
Open a File Icons icon, then Get icon, and copy it as React, Vue, Svelte, Angular, Solid, Preact, SVG, or as a data URL. Each is one self-contained component or file with the SVG inside.
Open the icon's page, choose Get icon, then Install with shadcn CLI. The CLI adds one file, components/icons/<icon>.tsx, with a size prop and every SVG prop; its first line names File Icons, John Gardner and ISC. It needs a free account.
Copy it. File Icons has no package here, so each icon you install is one small file in your project with no dependency, and only the icons you import reach your bundle.
Yes. Open an icon and pick a color or a stroke width: the preview, the code and the PNG all use it.
File Icons is drawn on a 512 × 512 grid, so at the same size it looks as large as its grid allows. Set width and height on the component, or a class like size-6; Customize also sets the size it exports at, plus padding and rotation.
Tailwind text classes: text-primary or text-muted-foreground colors an icon, size-5 sizes it. On an installed icon, className reaches the svg like any prop.
Next to a visible label, a File Icons icon is decoration: add aria-hidden="true" so screen readers skip it. Alone, as in an icon-only button, name the button with aria-label instead. The installed component passes every SVG prop through, so both work on it.
File Icons icons are drawn in currentColor, so they take the text color and follow your theme in light and dark mode. Icons that carry meaning need 3:1 contrast against their background (WCAG 1.4.11): use the same text color tokens as the label beside them.
Yes. ISC allows commercial use; keep the license notice when you ship the icons' source files. The full terms are in the license, linked on this page.
No visible credit is required: ISC only asks that you keep the license notice if you ship the icons' source files. Icons installed with the shadcn CLI already start with a comment naming File Icons, John Gardner and the license.
Yes. Every File Icons icon is free to browse, copy and download here. Pro adds the MCP server, which installs icons for your AI agent.
With Pro, the shadcn.io MCP server lets Claude Code, Cursor or any MCP client search every library and install the File Icons icon you ask for, with search_icons, get_icon and list_icon_libraries.
File Icons has no npm package here, so get_icon adds the icon as a component: one shadcn CLI command for React, or the code and the file to save it at for Vue, Svelte and other frameworks.
4.9 out of 5 from 150+ developers
Install any File Icons icon from a prompt
MCP, 6,000+ blocks and 14 premium templates in every Pro plan. The icons stay free.
Get Pro