k-fencore

FenCore is a pure logic library for WoW addons - no UI dependencies, just utility functions.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "k-fencore" with this command: npx skills add falkicon/mechanic/falkicon-mechanic-k-fencore

FenCore Library

FenCore is a pure logic library for WoW addons - no UI dependencies, just utility functions.

Design Philosophy

  • Pure Functions: No side effects, predictable outputs

  • No UI Dependencies: Works in any layer of your addon

  • Testable: All functions can be unit tested without WoW

  • Documented: Every function has clear input/output contracts

MCP Tools

Task MCP Tool

List All Functions fencore.catalog()

Search Functions fencore.search(query="clamp")

Get Function Details fencore.info(domain="Math", function="Clamp")

Domains

FenCore organizes functions by domain:

Domain Purpose Examples

Math Numeric operations Clamp , Round , Lerp , InRange

Table Table manipulation Copy , Merge , Filter , Map

String String utilities Split , Trim , StartsWith , Format

Color Color manipulation HexToRGB , RGBToHex , Lighten , Darken

Time Time formatting FormatDuration , FormatTime , ParseDuration

Environment WoW detection IsRetail , IsClassic , GetExpansion

Usage Pattern

local FenCore = LibStub("FenCore")

-- Access by domain local Math = FenCore.Math local result = Math.Clamp(value, 0, 100)

-- Or direct access local clamped = FenCore.Math.Clamp(value, 0, 100)

Common Functions

Math

FenCore.Math.Clamp(value, min, max) -- Constrain value to range FenCore.Math.Round(value, decimals) -- Round to decimal places FenCore.Math.Lerp(a, b, t) -- Linear interpolation FenCore.Math.InRange(value, min, max) -- Check if value in range

Table

FenCore.Table.Copy(tbl) -- Shallow copy FenCore.Table.DeepCopy(tbl) -- Deep copy FenCore.Table.Merge(base, override) -- Merge tables FenCore.Table.Filter(tbl, predicate) -- Filter by function FenCore.Table.Map(tbl, transform) -- Transform values

Environment

FenCore.Environment.IsRetail() -- true if retail client FenCore.Environment.IsClassic() -- true if classic client FenCore.Environment.GetExpansion() -- "TWW", "Classic", etc. FenCore.Environment.GetBuildInfo() -- version, build, date

Best Practices

  • Use for Core layer - FenCore belongs in your addon's pure logic layer

  • Don't wrap unnecessarily - Call FenCore directly, don't create wrappers

  • Check domain first - Use fencore.search to find existing functions before writing your own

  • Prefer pure functions - If you need state, that belongs in Bridge layer

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

k-ecosystem

No summary provided by upstream source.

Repository SourceNeeds Review
General

s-lint

No summary provided by upstream source.

Repository SourceNeeds Review
General

k-create-skill

No summary provided by upstream source.

Repository SourceNeeds Review