juliettef/IconFontCppHeaders logo

juliettef/IconFontCppHeaders

Free

C and C++ headers, C# and Python classes, Rust files and Go package for icon fonts Font Awesome, Fork Awesome, Google Material Design icons and symbols, Pictogrammers Material Design icons, Kenney game icons, Fontaudio, Codicons and Lucide.

FreeFree tier
Type
Open Source

About juliettef/IconFontCppHeaders

IconFontCppHeaders is an open-source project that generates C and C++ headers, C# and Python classes, Rust files, and Go packages for popular icon fonts, including Font Awesome, Fork Awesome, Google Material Design icons, Pictogrammers Material Design icons, Kenney game icons, Fontaudio, Codicons, and Lucide. It maps icon names to their Unicode codepoints, allowing developers to easily use icon fonts in their applications without manually looking up character codes. The project provides pre-generated files for multiple font versions and supports both free and pro variants where available.

Key Features

Supports multiple icon fonts: Font Awesome (4, 5, 6, 7), Fork Awesome, Google Material Design, Pictogrammers, Kenney game icons, Fontaudio, Codicons, Lucide
Generates headers and classes for C, C++, C#, Python, Rust, and Go
Includes both free and pro/brand variants of icon fonts
Pre-generated files available, no build step required for most users
Maps icon names to Unicode codepoints for easy integration into UI code

Pros & Cons

Pros
  • Saves time by providing pre-generated mappings for popular icon fonts
  • Wide language support (C, C++, C#, Python, Rust, Go)
  • Covers many font families including free and pro versions
  • No runtime dependencies; just include the generated header or class
  • Actively maintained with frequent updates for new icon font versions
Cons
  • Limited to the icon fonts that are bundled; custom fonts require manual additions
  • Generated files can become large for comprehensive icon sets
  • Only provides constants; actual font rendering still requires a font loading library
  • Some pro versions (e.g., Font Awesome Pro) require separate font files and licenses

Best For

Game development using icon fonts for UI elementsDesktop applications (C++, C#) needing icon referencesWeb or mobile apps using Python or Rust with icon font supportEmbedded systems programming with C/C++ and icon fontsCross-platform projects that require consistent icon naming across languages

FAQ

What icon fonts are supported?
The project supports Font Awesome (versions 4, 5, 6, 7), Fork Awesome, Google Material Design icons and symbols, Pictogrammers Material Design icons, Kenney game icons, Fontaudio, Codicons, and Lucide.
Which programming languages are covered?
Headers and classes are provided for C, C++, C#, Python, Rust, and Go.
How do I use the generated files?
Simply include the appropriate header or class file for your language and font choice. Each file defines constants that map icon names to Unicode codepoints. You then use these constants when rendering icon fonts in your application.
Are both free and pro icon variants included?
Yes, for Font Awesome 5 and 6, both free solid/regular/brands and pro files are generated. The pro files are provided but require a proper Font Awesome Pro license to use the actual font files.