jamesread 7d020873d6 fix: #672 Empty execution tracking ID in InternalLogEntry (backport to release/2k) há 11 meses atrás
..
README.md 7d020873d6 fix: #672 Empty execution tracking ID in InternalLogEntry (backport to release/2k) há 11 meses atrás
package.json 7d020873d6 fix: #672 Empty execution tracking ID in InternalLogEntry (backport to release/2k) há 11 meses atrás

README.md

@hugeicons/core-free-icons

Hugeicons Core Free Icons Package - Beautiful and customizable icons for your applications

31c9262e-aeea-4403-9086-3c8b88885cab

What is Hugeicons?

Hugeicons is a comprehensive icon library designed for modern web and mobile applications. The free package includes 4,500+ carefully crafted icons in the Stroke Rounded style, while the pro version offers over 40,000+ icons across 9 unique styles.

Key Highlights

  • 4,500+ Free Icons: Extensive collection of Stroke Rounded icons covering essential UI elements, actions, and concepts
  • Pixel Perfect: Every icon is crafted on a 24x24 pixel grid ensuring crisp, clear display at any size
  • Customizable: Easily adjust colors, sizes, and styles to match your design needs
  • Tree-Shakeable: Optimized for modern bundlers with automatic dead code elimination
  • Optimized Loading: Individual icon imports reduce bundle size by 99%
  • Regular Updates: New icons added regularly to keep up with evolving design trends

📚 Looking for Pro Icons? Check out our comprehensive documentation at docs.hugeicons.com for detailed information about pro icons, styles, and advanced usage.

a40aa766-1b04-4a2a-a2e6-0ec3c492b96a

Installation

This is a core package that provides the raw icons. To use these icons in your project, you'll need to install both this package and the corresponding framework-specific package:

# First, install the core package
npm install @hugeicons/core-free-icons

# Then install the framework-specific package
npm install @hugeicons/react          # for React
# or
npm install @hugeicons/react-native   # for React Native
# or
npm install @hugeicons/vue           # for Vue
# or
npm install @hugeicons/angular       # for Angular
# or
npm install @hugeicons/svelte        # for Svelte

Usage

Import Methods

This package now supports multiple import methods for maximum flexibility:

1. Static Import (Tree-shakeable)

Best for production builds when you know which icons you need:

import { Home01Icon, User01Icon } from '@hugeicons/core-free-icons';

2. Dynamic Import - Full Bundle

Loads the entire icon library (use when you need many icons dynamically):

const { Home01Icon } = await import('@hugeicons/core-free-icons');

3. Dynamic Import - Individual Icons (NEW ✨)

Loads only the specific icon you need (99% smaller bundle size):

// Loads just ~0.75KB instead of ~5MB!
const icon = await import('@hugeicons/core-free-icons/Home01Icon');
const Home01Icon = icon.default;

Performance Comparison

Import Method Bundle Size Load Time Best For
Static Import ~2-3KB per icon 0ms (bundled) Production builds
Dynamic Full Bundle ~5MB 100-200ms Many dynamic icons
Dynamic Individual ~0.75KB 10-20ms Icon pickers, lazy loading

For real-world applications, we recommend using our framework-specific packages that provide optimized components and additional features. Check out the Framework Support section below for more details.

Tree-Shaking Support

This package is optimized for tree-shaking with modern bundlers (Webpack, Rollup, Vite, etc.). When you import icons using the standard syntax, bundlers will automatically eliminate unused icons:

// Only the icons you import will be included in your bundle
import { UserIcon, HomeIcon } from '@hugeicons/core-free-icons';

// Bundlers automatically tree-shake unused icons
// Result: Only UserIcon and HomeIcon (~1.5KB) instead of entire library (~5MB)

Requirements for tree-shaking:

  • Use a modern bundler (Webpack 5+, Rollup, Vite, Parcel)
  • Ensure your bundler has tree-shaking enabled
  • The package automatically sets sideEffects: false for optimal tree-shaking

Features

  • 🎯 Individual Icon Imports: Load only what you need with 99% bundle size reduction
  • 🌳 Tree-shakeable: Optimized for modern bundlers
  • 📦 Multiple Import Methods: Static, dynamic bundle, or dynamic individual
  • 🔷 TypeScript Support: Full type definitions included
  • 📱 Framework Agnostic: Works with any JavaScript framework
  • ⚡ Optimized Performance: Lazy load icons on demand
  • 🎨 Customizable: Easy to style with CSS or inline styles
  • ✅ ESM & CommonJS: Support for both module systems
  • 🚀 Zero Dependencies: No external dependencies
  • 🔄 Regular Updates: New icons added frequently

Framework Support

Hugeicons provides dedicated packages for various frameworks:

Each framework package provides optimized components, additional features, and framework-specific documentation.

Types

TypeScript types are included and will work out of the box.

License

Created by Hugeicons. All rights reserved.