Skip to content

fix(icons): add Tabler icon support DEV-2929 - #582

Merged
jamesrkiger merged 6 commits into
masterfrom
dev-2929-tabler-icons
Sep 25, 2026
Merged

jamesrkiger merged 6 commits into
masterfrom
dev-2929-tabler-icons

Conversation

@jamesrkiger

@jamesrkiger jamesrkiger commented Sep 23, 2026 •

Copy link
Copy Markdown
Contributor

📣 Summary

Adds support for Tabler icons in doc articles alongside the existing KPI icon set.

💭 Notes

This change ensures doc writers can reference both our legacy icons and Tabler icons inline in articles using the same <i class="..."> pattern already used for k-icons.

How it works:

  • k-icons are unchanged — generated from SVGs in the KPI repo via fantasticon as before
  • Tabler icons are handled by subsetting the official Tabler webfont (@tabler/icons-webfont) down to a specified (manually set) list of icons KPI currently uses in scripts/tabler-icons-list.json
  • Subsetting (via subset-font) was chosen over generating from SVGs because Tabler's outline icons are stroke-based and don't convert correctly to a font format via fantasticon — the webfont package has already done that conversion properly
  • Both sets are regenerated automatically on npm install

Usage in articles:

<!-- KPI icons (legacy) -->
<i class="k-icon k-icon-trash"></i>

<!-- Tabler outline -->
<i class="ti-outline ti-logout"></i>

<!-- Tabler filled -->
<i class="ti-filled ti-trash"></i>

To verify this works, build the site and view the language_dashboard page. The k-icon-language icon has been replaced by the tabler world icon (will fix the other instances of this icon in a separate PR).

@jamesrkiger jamesrkiger changed the title Initial work Add Tabler icon support Sep 23, 2026
@jamesrkiger jamesrkiger changed the title Add Tabler icon support fix(icons): add Tabler icon support DEV-2929 Sep 23, 2026
@jamesrkiger jamesrkiger self-assigned this Sep 23, 2026
@jamesrkiger
jamesrkiger requested review from magicznyleszek and a lite review from Copilot September 23, 2026 13:28

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

Moderate locale-registration and icon-validation issues remain, along with documentation and generated-output consistency nits.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 2 Medium severity · 3 Low severity

Open (5)
What changed in this PR

Adds Tabler outline and filled icon support alongside existing k-icons using subsetted webfonts and generated CSS assets.

Changes:

  • Adds Tabler icon allow-listing, dependencies, and generation scripts.
  • Registers generated fonts and shared styling.
  • Updates documentation and dashboard icon usage.
File Summary
source/​language_dashboard.md Uses a Tabler icon; no findings.
source/​conf.py Loads Tabler styles for English docs. Moderate (2 votes): also register both stylesheets for Spanish and French builds.
source/​_static/​tabler-icons/​tabler-outline.css Generated Tabler outline stylesheet; no findings.
source/​_static/​tabler-icons/​tabler-filled.css Generated Tabler filled stylesheet; no findings.
source/​_static/​css/​kobo_theme.css.map Updated compiled source map; no findings.
source/​_static/​css/​kobo_theme.css Includes compiled Tabler styles; no findings.
scripts/​tabler-icons-list.json Defines the supported Tabler icons; no findings.
scripts/​generate_icons.js Generates subsetted fonts and CSS. Moderate (2 votes): fail when requested icons are missing instead of silently filtering them. Nit (2 votes): keep generated URL quoting consistent with committed CSS.
sass_source/​sass/​_icons.scss Adds shared Tabler icon styling; no findings.
README.md Documents icon usage. Nits: fix commandd to command (3 votes) and clarify the heading to show the required two-class form (2 votes).
package.json Adds Tabler and subsetting dependencies; no findings.
Files not reviewed (1)
  • source/_static/css/kobo_theme.css: Generated file

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread scripts/generate_icons.js Outdated
Comment thread source/conf.py
Comment thread README.md Outdated
Comment thread README.md Outdated
Comment thread scripts/generate_icons.js Outdated
jamesrkiger and others added 2 commits September 23, 2026 10:22
Fixed a typo in the README regarding the inspect command.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@jamesrkiger
jamesrkiger requested review from pauloamorimbr and removed request for magicznyleszek September 23, 2026 14:51
Comment thread README.md Outdated

@pauloamorimbr pauloamorimbr left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

There are some unrelated syntax fixing deleting empty spaces, but I'm fine with that! Well done. Tested and icons appear properly after building.

@jamesrkiger
jamesrkiger merged commit 7aea511 into master Sep 25, 2026
4 checks passed
@jamesrkiger
jamesrkiger deleted the dev-2929-tabler-icons branch September 25, 2026 13:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants