pine-icons

Embed icons in pocopine apps via proc macros and template registration.

Updated Jun 1, 2026
One-click install
npx skills add https://github.com/mambisi/pocopine-skills --skill pine-icons
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pine-icons
Source: https://github.com/mambisi/pocopine-skills/tree/main/pine-icons
Command: npx skills add https://github.com/mambisi/pocopine-skills --skill pine-icons

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pine-icons, and includes scripts (resource) and references (resource) components.

What problem does it solve?

The pine-icons Skill Unit provides a solution to embedding and rendering icons efficiently in pocopine applications, addressing the challenge of selecting, managing, and integrating icons across the application without bloat.

Core Features & Use Cases

  • Efficient Icon Management: Embed and use icons through two approaches - compile-time via the icon! proc macro for Rust handlers, and template-driven with register_icons! for .poco templates.
  • Variability and Customization: Supports different icon styles (outline or filled) and sizes.
  • Reactive Usage: Allows reactive selection of icons in .poco templates for dynamic theme switching.
  • Tree Shaking: Ensures only required icons are included in the final binary for efficient usage of resources.

Quick Start

To register and use an icon, execute: 'pineIcons register [name] [style]', for example, 'pineIcons register star filled'.

Frequently Asked Questions about pine-icons

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I integrate SVG icons into pocopine templates without binary bloat?

To integrate SVG icons without bloat, register specific icons on-demand using the `register_icons!` macro in `.poco` templates, which ensures only required icons are compiled into the final binary.

How does the Rust `icon!` proc macro handle compile-time icon selection?

The `icon!` proc macro handles compile-time icon selection by embedding SVG icons directly into Rust handlers, allowing you to specify styles like `outline` or `filled` while enforcing tree shaking.

Can I dynamically switch icon styles reactively in a `.poco` template?

Yes, you can reactively switch icon styles in `.poco` templates by registering multiple styles for the same icon, enabling dynamic theme switching based on application state.

What is the best way to manage tree-shaking for SVG icons in a Rust application?

The best way to manage tree-shaking for SVG icons is combining compile-time `icon!` macro selection for Rust handlers and template-driven registration, ensuring unused icons are excluded from the binary.

Does pine-icons support both filled and outline icon variations?

Yes, pine-icons supports variability and customization by allowing you to select different icon styles such as `outline` or `filled` during registration and macro usage.