Ninja
The ninja icon represents a stealthy warrior or assassin, symbolizing stealth, agility, and martial arts skills.
Exports at 24 × 24 px
Code
Ninja in your framework
In any framework. Customize it above, and the code follows.
export const NinjaIcon = (props: React.SVGProps<SVGSVGElement>) => (
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 72 72" fill="none" stroke="currentColor" {...props}>
<path fill="#3f3f3f" d="M53.745 45.422c-1.934-1.958-4.658-2.951-8.094-2.951h-2.415a.14.14 0 0 1-.138-.12l-.154-.919c5.456-2.689 9.277-8.76 9.277-15.812c0-9.537-6.976-17.295-15.551-17.295S21.12 16.083 21.12 25.62c0 7.051 3.818 13.12 9.271 15.81l-.154.923a.14.14 0 0 1-.138.118h-2.415c-3.436 0-6.16.993-8.094 2.951c-2.844 2.878-3.222 7.14-3.194 9.413v5.081a1 1 0 0 0 1 1h38.543a1 1 0 0 0 1-1v-5.07c.028-2.283-.35-6.546-3.194-9.424"/><path d="M36.668 19.097c7.659 0 14.104 1.427 15.38 9.545a19 19 0 0 0 .248-3.022c0-9.537-6.975-17.295-15.55-17.295S21.194 16.083 21.194 25.62a19 19 0 0 0 .248 3.022c1.276-8.118 7.565-9.545 15.224-9.545m17.068 26.648a1.7 1.7 0 0 0-.11-.362a1 1 0 0 0-.124-.171a1 1 0 0 0-.077-.105l-.069-.057l-.01-.009a11.14 11.14 0 0 0-7.687-2.57H43.33a1 1 0 0 0-.227.046c-.028.007-.056.007-.083.016a1 1 0 0 0-.281.152c-.016.012-.034.02-.05.033a1 1 0 0 0-.182.216a.6.6 0 0 0-.132.314a1 1 0 0 0-.04.127c-.005.043-.496 4.175-5.614 9.393c-5.118-5.228-5.616-9.336-5.62-9.387a1 1 0 0 0-.043-.143a1 1 0 0 0-.06-.198a1 1 0 0 0-.093-.138a1 1 0 0 0-.14-.17a1 1 0 0 0-.126-.085a.7.7 0 0 0-.378-.145a1 1 0 0 0-.156-.031H27.69a11.16 11.16 0 0 0-7.687 2.562a1 1 0 0 0-.09.122a1 1 0 0 0-.114.151a2 2 0 0 0-.114.363a1 1 0 0 0 .008.216a1 1 0 0 0 .006.134a26.38 26.38 0 0 0 10.266 14.699a1 1 0 0 0 .596.198H44.28a1 1 0 0 0 .963-.728a1 1 0 0 0-.122-.79a26 26 0 0 0 8.599-13.312a1 1 0 0 0 .006-.137a1 1 0 0 0 .009-.204"/><path fill="#3f3f3f" d="M17.748 44.983a1 1 0 0 0 .857.487a1 1 0 0 0 .21-.023a1 1 0 0 0 .783-.861l.768-6.566a1 1 0 0 0-.821-1.101l-5.25-.915c-.018-.003-.035.001-.053-.001a1 1 0 0 0 .066-.217L15.73 25.75a1 1 0 0 0-1.52-.989L8.8 28.137a1 1 0 0 0-.328 1.362Z"/><path fill="#d0cfce" d="m26.736 43.013l-11.147-17.93a1 1 0 0 0-1.843.41l-1.232 10.35a1 1 0 0 0 .819 1.102l6.048 1.065l-.919 7.724a1 1 0 0 0 .819 1.103a12.23 12.23 0 0 1 7.455-3.824"/><path fill="#fcea2b" d="M50.286 22.777c-2.352-2.849-6.937-4.294-13.628-4.294c-6.38 0-10.861 1.41-13.315 4.192a7.15 7.15 0 0 0-1.87 5.193a18.5 18.5 0 0 0 1.271 4.99l.064.104l-.193.162l.232-.096a1 1 0 0 0 .115.112l.052.048a1 1 0 0 0 .154.076l-.064.245l.124-.217a1 1 0 0 0 .174.03l.044-.001a.7.7 0 0 0 .225-.037c.079-.025 8.122-2.623 12.987-2.623c5.593 0 13.086 2.219 13.161 2.241a.75.75 0 0 0 .922-.472l.052-.119a18.7 18.7 0 0 0 1.05-4.44v-.016a6.68 6.68 0 0 0-1.557-5.078"/><path fill="none" stroke="#000" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" d="M19.875 46.59L9.329 28.985l5.41-3.374L25.91 43.573"/><path fill="none" stroke="#000" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" d="m14.206 30.088l-.698 5.873l8.621 1.532m-2.059 3.132l-.623 5.233"/><path d="M42.746 24.944a2 2 0 1 1-2-2a2 2 0 0 1 2 2m-8 0a2 2 0 1 1-2-2a2 2 0 0 1 2 2"/><path fill="none" stroke="#000" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" d="M17.393 59.917v-5.082c-.044-3.635.96-11.365 10.288-11.365h2.415a1.14 1.14 0 0 0 1.125-.953l.277-1.661m24.439 19.061v-5.082c.044-3.635-.96-11.365-10.288-11.365h-2.415a1.14 1.14 0 0 1-1.125-.953l-.277-1.661"/><ellipse cx="36.667" cy="25.62" fill="none" stroke="#000" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" rx="14.551" ry="16.295"/><path fill="none" stroke="#000" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" d="M23.448 32.435s8.196-2.66 13.22-2.66c5.752 0 13.374 2.273 13.374 2.273m-27.813-4.396s-1.07-8.555 14.439-8.555c16.087 0 14.436 8.555 14.436 8.555M30.096 43.47s.743 8.223 14.174 16.446M20.662 45.78c.78 3.177 3.091 9.074 9.89 14.137"/><path fill="none" stroke="#000" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2" d="M43.32 43.47s-.432 4.792-6.611 10.717m16.031-8.344a25.17 25.17 0 0 1-9.244 13.59"/>
</svg>
);Other libraries
Ninja in 5 more libraries
Each library draws it its own way. Open one to compare.
OpenMoji
More like it
Icons that share its tags, then the ones next to it in OpenMoji, in the same style.
Search OpenMoji
Skip the copy and paste. With Pro, your AI agent finds and installs any OpenMoji icon from a prompt.
Get ProTags
Browse by tag
Ninja is tagged combat, arts and martial. Related tags follow; each opens its icons from every library.
Pricing
OpenMoji MCP, with Pro
Ask for Ninja or any of 4,481 OpenMoji icons and your agent installs it. The MCP comes with every Pro plan, with 6,000+ blocks and 14 premium templates. The icons stay free.
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
What the Ninja icon means and where it's used, then how to install, style, label and license it.
The ninja icon represents a stealthy warrior or assassin, symbolizing stealth, agility, and martial arts skills. It originates from Japanese culture and folklore. The icon signifies a mysterious and skilled fighter.
In real-world applications, the ninja icon appears in media and entertainment related to ninjas, such as movies, video games, and books. It is also used in fitness and martial arts contexts.
From a UX perspective, the ninja icon communicates qualities of stealth and precision, often used to represent quick or hidden actions in interfaces.
Ninja is one of 4,481 icons in OpenMoji, made by OpenMoji and released under CC BY-SA 4.0. It is drawn on a 72 × 72 grid.
Sign in (it's free), then open Get icon, Install with shadcn CLI, and pick your package manager to copy the command. It adds NinjaIcon to components/icons/openmoji-ninja.tsx: one file, a size prop (24 by default) and every SVG prop, with no icon package.
Copy it as React (from Get icon, or the Code section): a typed NinjaIcon component you paste into your project, with no package to install. Only the icons you import reach your bundle. It works in Next.js and any React app.
Open Get icon, then Copy as code, and pick Vue, Svelte, Angular, Solid or Preact; the Code section shows each one too. Every version is one self-contained component with the SVG inside, and SVG and data URL copies are there for plain HTML and CSS.
With Pro, the shadcn.io MCP server lets Claude Code, Cursor or any MCP client find the Ninja icon, or any of 4,481 OpenMoji icons, and install it from a prompt.
It's multicolor, so it keeps its own colors.
Set width and height on the component, or a class like size-6. It's drawn on a 72 × 72 grid, so it stays sharp at any size. Customize also sets the size it exports at, its padding and rotation.
Yes. It keeps its own colors in light and dark mode, so check it against both backgrounds. The icon is a vector, so it needs no separate dark asset.
Next to a visible label it's decoration: add aria-hidden="true" so screen readers skip it. Standing alone, as in an icon button, give the button a name instead, like aria-label="Ninja", so screen readers say what it does.
Yes. NinjaIcon passes every SVG prop to the svg element, so <NinjaIcon aria-hidden="true" /> works, and so do role="img" with aria-label, or a title child, when it carries meaning on its own.
Yes. Open Get icon, then Download file: SVG for code or design tools like Figma; PNG, WebP or JPEG at 512px; or an ICO favicon with 16, 32 and 48px inside. Each one uses what you set in Customize.
Yes, with conditions: CC BY-SA 4.0 asks you to credit the author (OpenMoji), and icons you change must use the same license. The full terms are in the license, linked on this page.
Yes. CC BY-SA 4.0 asks you to credit OpenMoji, and icons you change must be shared under the same license.
Yes. Copying and downloading it is free, and the shadcn CLI install only needs a free account.
5 other libraries draw an icon called Ninja. The Other libraries section on this page shows each one, so you can compare them and open the one that fits your style.
Its tags are combat, arts and martial. Each tag page lists the icons that carry it from every library, which is the quickest way to find a match for Ninja in another set.
OpenMoji draws many icons in several styles: Light next to the default. Open the library and pick a style above the grid to see Ninja's siblings in it.
4.9 out of 5 from 150+ developers
Install Ninja from a prompt
MCP, 6,000+ blocks and 14 premium templates in every Pro plan. The icons stay free.
Get Pro