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

@benefex/icons

v0.45.0

Published

Benefex icon package

Readme

onehub-icons

SVGs are automatically converted to TSX using svgr

Adding/Updating icons

  • Add or update the svg in src/svgs
  • Make sure it has fill="currentColor or stroke="currentColor"
  • Make sure it has a viewBox (width, height will be removed)

Versioning

Use semantic versioning:

  • major version when you make incompatible API changes
  • minor version when you add functionality in a backwards-compatible manner
  • patch version when you make backwards-compatible bug fixes

All latest version deployments are handled by semantic-release which is triggered in CircleCI's main pipeline. semantic-release will look at your commit message and determine how to increment the version based on its format. See here for more details on how this works. commitlint hook is used to ensure your commit message is correct before pushing.

To summarise:

  • feat is a minor version bump
  • fix is a patch version bump
  • perf is a patch version bump
  • commit with ! after the type (or scope) is a major version bump. Eg: feat!: add image or feat(new)!: add image
  • all other types do not cause any version bump

*This is fully customizable so can be updated to better suit our needs if required

When the pull request is merged to main, the CircleCI main workflow runs which will perform all of the necessary npm publishing and git tagging, along with creating a Github release containing release notes.

Beta deployments

All pull requests will deploy a beta version as part of the PR pipeline. This allows for easy testing without having to merge your PR. The version deployed will be {CURRENT_MAJOR_VERSION}.0.0-PR${PULL_REQUEST_NUMBER}-BN${BUILD_NUM}. For example: 7.0.0-PR100-BN150

Check the version your branch is using

We do not keep track of the current version in package.json due to it not being necessary (Why isn't it necessary?). However, to print out the package version your branch is using, run npm run check-version

Usage

Install via npm:

pnpm install --save @benefex/icons

Import icons:

You can pass an optional title prop - https://developer.mozilla.org/en-US/docs/Web/SVG/Element/title

import { IconName } from '@benefex/icons';
import { Icon } from '@benefex/components';

<Icon svg={IconName} title="Icon Label" />;

Animated icons

Import the animation stylesheet once, then add bfx-icon--animated to a parent of a supported icon. Currently, the sparkles and upload icons support animation.

import '@benefex/icons/animations.css';
import { SparklesLight } from '@benefex/icons';

<span className="bfx-icon--animated">
  <SparklesLight aria-hidden="true" />
</span>;