Pro Every tool, icon and stickerAll of Pro for $7.99/month

  • All 90 tools
  • Every icon style
  • Icon & sticker pack ZIPs
Go Pro
HubToolify

Pro packages

Install the Pro styles from HubToolify's own npm registry with a Pro plan.

as Markdown, for notes or an AI chat

The free npm packages contain Line. With a Pro plan, the Pro styles install from HubToolify's own npm registry, under the @hubtoolify-pro scope. The registry checks your plan on every install.

1. Sign in once#

Use your HubToolify email and password. This saves a read-only token for the @hubtoolify-pro scope in your own npm config. The token is never printed.

Terminal
npx @hubtoolify/icons login

2. Point the scope at HubToolify#

Add one line to your project's .npmrc. It holds no secret, so it is safe to commit:

.npmrc
@hubtoolify-pro:registry=https://hubtoolify.com/api/npm/

3. Install and import#

Terminal
npm install @hubtoolify-pro/icons-react         # React components, one subpath per style
npm install @hubtoolify-pro/icons-react-native  # React Native components, one path per icon
npm install @hubtoolify-pro/icons-svelte        # Svelte components, one subpath per style
npm install @hubtoolify-pro/icons-angular       # Angular <hti-pro-icon>, one subpath per style
npm install @hubtoolify-pro/icons               # the Pro CSS kit and SVG files
JSX
import { HtiHome } from '@hubtoolify-pro/icons-react/slab';

<HtiHome size={32} color="#1766f2" />
Svelte
<script>
  import { HtiHome } from '@hubtoolify-pro/icons-svelte/slab';
</script>

<HtiHome size={32} color="#1766f2" />
Angular
import { HtiProIcon } from '@hubtoolify-pro/icons-angular';
import { htiHome } from '@hubtoolify-pro/icons-angular/slab';

@Component({
  standalone: true,
  imports: [HtiProIcon],
  template: `<hti-pro-icon [icon]="home" [size]="32" color="#1766f2" />`,
})
export class NavComponent {
  home = htiHome;
}
React Native
import HtiHome from '@hubtoolify-pro/icons-react-native/slab/home';

<HtiHome size={32} color="#1766f2" />

Each Pro style is its own subpath, such as /slab, /mellow or /pixel, in every package. React Native imports one icon per path (/slab/home), because Metro does not drop unused icons. The components take size, color, secondaryColor and secondaryOpacity (for the two-tone styles) and title, like the free React, React Native, Svelte and Angular packages. Jass and Lineal keep their fixed palette, and Duo and Flat start in each icon's own colour. 3D is a rendered image, not a component: download it from the icon library.

Flutter uses pub, not npm. The Pro package, hubtoolify_icons_pro, comes from HubToolify's own pub repository and works with a Flutter token from your Connected apps page. See Flutter: Pro styles.

Tokens#

  • A token lasts 365 days and stops working when the plan ends.
  • See and revoke your tokens on your account's npm page. Changing your password revokes all of them.
  • A token belongs to the person whose plan it is. Do not share it with other people.

Builds and CI#

The registry checks the plan on every install, so a build fails if the plan has lapsed. The sturdiest setup is to pack the version you use once and keep the tarball in your private repository or private registry (never a public one: the licence does not allow Pro files there):

Terminal
npm pack @hubtoolify-pro/icons-react
npm install ./hubtoolify-pro-icons-react-*.tgz

To install from the registry in CI instead, print a token and store it as a CI secret. Treat it like a password:

Terminal
npx @hubtoolify/icons login --print-token
No npm? The Pro CSS kit and the 3D pack download as ZIPs from the icon library while you are signed in with Pro. See CSS classes.

    Type to search every page. ↑ ↓ to move, Enter to open.