Skip to content

refactor(templates): move built-in CV icon resources into the templates module#326

Merged
DemchaAV merged 1 commit into
2.0-devfrom
chore/move-cv-template-resources
Jul 6, 2026
Merged

refactor(templates): move built-in CV icon resources into the templates module#326
DemchaAV merged 1 commit into
2.0-devfrom
chore/move-cv-template-resources

Conversation

@DemchaAV

@DemchaAV DemchaAV commented Jul 6, 2026

Copy link
Copy Markdown
Owner

Why

The built-in CV preset icons shipped in graph-compose-core, but nothing in core reads them. They are loaded only by graph-compose-templates — the four presets and the SvgGlyph.fromResource("/templates/cv/…") loader all live in that module. templates/pom.xml already states the split intent: "a lean core carries none of it." These 29 SVGs were the last template asset still sitting in core, so the claim wasn't fully true.

What

git mv of 29 SVG files (recorded as 100%-similarity renames — history preserved):

src/main/resources/templates/cv/**  →  templates/src/main/resources/templates/cv/**

Covers all four CV presets (mint-editorial, monogram-sidebar, sidebar-portrait, timeline-minimal), plus the sidebar portrait.svg and the mint expertise-badge.svg. The classpath path stays /templates/cv/<preset>/icons/<name>.svg, so no Java changes — only which artifact carries the resources (core → templates). Core now carries no template assets; the templates module packages them via the default src/main/resources layout (no new <resources> stanza needed).

Tests

  • Aggregator verify slice (core → render-* → templates → testing → qa): BUILD SUCCESS, 639 tests, 0 failures, 0 skipped.
  • Targeted resource-loading tests green: WidgetSmokeTest 10/10 (the direct SvgGlyph.fromResource("/templates/cv/mint-editorial/icons/phone.svg") call), MintEditorialSmokeTest 9, MonogramSidebarSmokeTest 4, SidebarPortraitSmokeTest 3, TimelineMinimalSmokeTest 3, CoverLetterV2SmokeTest 15.
  • Confirmed no build step (shade/assembly/resource-filtering) or published artifact loses the icons: graph-compose-bundle reaches them via its existing templates dependency; the graph-compose wrapper never carried template resources and is unchanged.

…es module

The CV preset icon SVGs (mint-editorial, monogram-sidebar, sidebar-portrait and
timeline-minimal, plus the sidebar portrait and the mint expertise badge) shipped
in graph-compose-core, but they are loaded only by graph-compose-templates through
SvgGlyph.fromResource("/templates/cv/...") — the presets and the loader both live
in that module. Move the 29 files so the resources sit with the code that reads
them; the classpath path is unchanged, so there are no Java changes. Core now
carries no template assets.
@DemchaAV DemchaAV merged commit 900c656 into 2.0-dev Jul 6, 2026
12 checks passed
@DemchaAV DemchaAV deleted the chore/move-cv-template-resources branch July 6, 2026 20:04
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.

1 participant