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

react-supacons-mantine

v1.2.2

Published

React icon selector component that integrates with the Supacons Core Icon Library and Mantine UI.

Downloads

57

Readme

React Supacons Mantine

npm version install size npm downloads

React Supacons Mantine is a React component library that integrates with the Supacons Core Icon Library, providing an icon selector component built with Mantine UI (tested on v6).

Installation

To install the library, use the following command:

  npx react-supacons-mantine -h # To see the help message
  npx react-supacons-mantine add -h # To see the help message for the add command
  npx react-supacons-mantine add [component] # To add a specific component to your project

Available Components

| Component | Type | Command | Description | |---------------------|-----------|--------------------------------------------------|------------------------------------------------------------------------------------------------------------------------| | PopoverSearchIcon | component | npx react-supacons-mantine add PopoverSearchIcon | The PopoverSearchIcon component is a React component that provides a searchable popover interface for selecting icons. |

Usage

To use the PopoverSearchIcon component, import it into your React application:

import React from 'react';
import { MantineProvider } from '@mantine/core';
import PopoverSearchIcon from './components/PopoverSearchIcon';

const App = () => {
  const handleIconSelect = (iconName: string) => {
    console.log(`Selected icon: ${iconName}`);
  };

  return (
    <MantineProvider>
      <PopoverSearchIcon onSelect={handleIconSelect} />
    </MantineProvider>
  );
};

export default App;

Example with Config

To use the PopoverSearchIcon component with a configuration object:

import React, { useState } from 'react';
import { MantineProvider } from '@mantine/core';
import PopoverSearchIcon, { PopoverSearchIconConfig } from './components/PopoverSearchIcon';

const App = () => {
    const [isDarkMode, setIsDarkMode] = useState(false);

    const handleIconSelect = (iconName: string) => {
        console.log(`Selected icon: ${iconName}`);
    };

    const config: PopoverSearchIconConfig = {
        resultsPerPage: 52,
        availableStyles: ["solid", "sharp"],
        contentColor: isDarkMode ? "#fff" : "#000",
        contentSize: 18,
        searchLabel: "Search icons",
        paginationLabel: "Page %d of %s",
        buttonLabel: "Select Icon",
        buttonIconName: "fa-solid fa-copy",
        buttonIconSize: 20,
        buttonIconColor: isDarkMode ? "#000" : "#fff",
        buttonColor: isDarkMode ? "#fff" : "#000",
        showBothIconAndText: true,
        noIconsFoundText: "No icons found",
    };

    return (
        <MantineProvider>
            <PopoverSearchIcon onSelect={handleIconSelect} config={config}/>
        </MantineProvider>
    );
};

export default App;

Example with and without configuration

| Not Configured | Configured | |--------------------------------------------------------|----------------------------------------------------| | Before | After |

Props

PopoverSearchIcon

| Prop | Type | Description | |------------|----------|-------------------------------------------------------------------------------| | onSelect | function | Callback function that is called when an icon is selected. | | config | object | Configuration object for customizing the component's behavior and appearance. |

config Object

| Property | Type | Description | |-----------------------|-----------|-----------------------------------------------------------------------------------------------------------------------------| | resultsPerPage | number | Number of icons to display per page. | | availableStyles | string[] | Array of available icon styles. | | contentColor | string | Color of the icons. | | contentSize | number | Size of the icons. | | buttonNode | ReactNode | Custom React node to replace the default button. Allows for complete customization of the button's appearance and behavior. | | buttonLabel | string | Label for the button that opens the popover. | | buttonIconName | string | Name of the icon to display on the button. | | buttonIconSize | number | Size of the icon on the button. | | buttonIconColor | string | Color of the icon on the button. | | buttonColor | string | Background color of the button. | | showBothIconAndText | boolean | Whether to show both icon and text on the button. | | noIconsFoundText | string | Text to display when no icons are found. | | paginationText | string | Text to display for pagination, use %d for current page and %s for total pages. |

Development

To build and test the library locally, use the following commands:

  npm run test # Run tests

License

This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. See the LICENSE file for details.

Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitHub.

Author

Repository

GitHub Repository

Bugs

For bug reports, please visit the issues page.

Keywords