npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@xsolla/xui-icons

v0.101.0

Published

A cross-platform React icon component library based on Lucide icons. Provides theme-aware icons that automatically adapt to the current theme colors.

Readme

Icons

A cross-platform React icon component library based on Lucide icons. Provides theme-aware icons that automatically adapt to the current theme colors.

Installation

npm install @xsolla/xui-icons
# or
yarn add @xsolla/xui-icons

Demo

Basic Usage

Icons are exported as named components. Import and use them directly:

import * as React from 'react';
import { Home, Settings, User, Search } from '@xsolla/xui-icons';

export default function BasicIcons() {
  return (
    <div style={{ display: 'flex', gap: 16 }}>
      <Home />
      <Settings />
      <User />
      <Search />
    </div>
  );
}

Icon Sizes

import * as React from 'react';
import { Bell } from '@xsolla/xui-icons';

export default function IconSizes() {
  return (
    <div style={{ display: 'flex', gap: 16, alignItems: 'center' }}>
      <Bell size={12} />
      <Bell size={16} />
      <Bell size={20} />
      <Bell size={24} />
      <Bell size={32} />
    </div>
  );
}

Custom Colors

import * as React from 'react';
import { Check, AlertCircle, X } from '@xsolla/xui-icons';

export default function ColoredIcons() {
  return (
    <div style={{ display: 'flex', gap: 16 }}>
      <Check color="#2ecc71" />
      <AlertCircle color="#f39c12" />
      <X color="#e74c3c" />
    </div>
  );
}

Anatomy

Import icons as named exports and use them as components:

import { Home, Settings, Check } from '@xsolla/xui-icons';

<Home
  size={24}            // Size in pixels (default: 24)
  color="#color"       // Custom color (uses theme default if not specified)
/>

Examples

Navigation Icons

import * as React from 'react';
import { ArrowLeft, ArrowRight, Menu, X } from '@xsolla/xui-icons';

export default function NavigationIcons() {
  return (
    <div style={{ display: 'flex', gap: 16 }}>
      <ArrowLeft />
      <ArrowRight />
      <Menu />
      <X />
    </div>
  );
}

Action Icons

import * as React from 'react';
import { Check, X, Minus, Copy } from '@xsolla/xui-icons';

export default function ActionIcons() {
  return (
    <div style={{ display: 'flex', gap: 16 }}>
      <Check />
      <X />
      <Minus />
      <Copy />
    </div>
  );
}

Status Icons

import * as React from 'react';
import { Check, AlertCircle } from '@xsolla/xui-icons';

export default function StatusIcons() {
  return (
    <div style={{ display: 'flex', gap: 16 }}>
      <Check color="#2ecc71" />
      <AlertCircle color="#f39c12" />
    </div>
  );
}

With Button

import * as React from 'react';
import { ArrowRight, ArrowLeft } from '@xsolla/xui-icons';
import { Button } from '@xsolla/xui-button';

export default function IconWithButton() {
  return (
    <div style={{ display: 'flex', gap: 16 }}>
      <Button iconLeft={<ArrowLeft />}>Back</Button>
      <Button iconRight={<ArrowRight />}>Continue</Button>
    </div>
  );
}

API Reference

Icon Components

Each icon is exported as a named component with the following props:

Icon Props:

| Prop | Type | Default | Description | | :--- | :--- | :------ | :---------- | | size | number | 24 | Icon size in pixels. | | color | string | Theme default | Icon color. |

Available Icons

The @xsolla/xui-icons package exports a curated set of commonly used icons:

  • Check - Checkmark icon
  • X - Close/remove icon
  • Copy - Copy to clipboard icon
  • Eye - Visibility on icon
  • EyeOff - Visibility off icon
  • ArrowLeft - Left arrow icon
  • ArrowRight - Right arrow icon
  • Settings - Settings/gear icon
  • Minus - Minus/subtract icon
  • AlertCircle - Alert/warning circle icon
  • CreditCard - Credit card icon
  • Menu - Hamburger menu icon
  • Bell - Notification bell icon
  • User - User profile icon
  • Search - Search/magnifying glass icon
  • Home - Home icon
  • ShoppingCart - Shopping cart icon
  • Upload - Upload icon
  • File - File icon

Extended Icon Sets

For additional icons, use the specialized icon packages:

  • @xsolla/xui-icons-base - Comprehensive icon library with 400+ icons organized by category (controls, communication, files, finance, etc.)
  • @xsolla/xui-icons-brand - Brand and company logos (160+ brands)
  • @xsolla/xui-icons-flag - Country flag icons
  • @xsolla/xui-icons-payment - Payment method icons
  • @xsolla/xui-icons-currency - Currency icons
  • @xsolla/xui-icons-product - Product-specific icons

Using icons-base

import { ChevronDown, ChevronUp, Calendar, Clock } from '@xsolla/xui-icons-base';

// Use like any other icon
<ChevronDown size={16} />
<Calendar color="#333" />

Theming

Icons use the design system theme for default color:

// Default color from theme
theme.colors.content.primary  // Default icon color

Accessibility

  • Icons are decorative by default (aria-hidden="true")
  • When using icons alone without text, provide an aria-label on the parent element
  • For icon buttons, use the IconButton component which requires aria-label