ucl-squads

Downloads squads, player photos, coaches, and crests for 36 UEFA Champions League clubs from UEFA.com.

Updated May 14, 2026
One-click install
npx skills add https://github.com/jesusprodriguezUnir/bracketMundial --skill ucl-squads-jesusprodriguezunir
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ucl-squads
Source: https://github.com/jesusprodriguezUnir/bracketMundial/tree/main/.agents/skills/ucl-squads
Command: npx skills add https://github.com/jesusprodriguezUnir/bracketMundial --skill ucl-squads-jesusprodriguezunir

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires sharp, and includes scripts (resource) components.

What problem does it solve? Keeping squad data, player photos, coach profiles, and club crests up to date for all 36 UEFA Champions League 2026/27 clubs requires tedious manual scraping and asset management. This Skill automates the entire ingestion pipeline directly from the official UEFA.com source. ## Core Features & Use Cases - Official Squad Ingestion: Extracts every player per club (shirt number, name, position, age, nationality, photo) and generates TypeScript modules in src/data/squads/{club}.ts with auto-generated starting XIs and tactical formations. - Asset Download & Optimization: Downloads player and coach photos from the UEFA CDN, optimizes them with Sharp to 300px WebP, and fetches official club crests in high resolution. - Manifests & Auditing: Regenerates photo manifest files and produces a coverage report (docs/missing-assets.md) showing missing photos per club. - Use Case: Before a matchday update, run the full ingestion for clubs like Real Madrid and Barcelona to refresh squads, photos, and crests, then check the audit report for any gaps. ## Quick Start Ask the assistant to run the full UCL squad ingestion for specific clubs, for example: update the squads, photos, and crests for Real Madrid and Manchester City using the ucl-squads workflow.

Frequently Asked Questions about ucl-squads

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

FAQPage Schema
How do I download UEFA Champions League squad data automatically?▼

Run the master script with npm run ucl:data to fetch official squad data for all 36 clubs from UEFA.com, or pass specific club codes like RMA BAR MCI to update only selected teams. Output is written as TypeScript modules in src/data/squads.

How to optimize player photos to WebP with Sharp?▼

The photo download command fetches images from the UEFA CDN and processes them with Sharp, resizing to 300px and converting to WebP at 80% quality. Files are saved under public/players/{CLUB}/{number}.webp.

Can I update only specific clubs instead of all 36 teams?▼

Yes, every command accepts club codes as arguments, such as node scripts/fetch-ucl-squads.mjs RMA BAR --data or --photos. Omitting codes runs the operation across all 36 Champions League clubs.

How do I check which player photos are missing?▼

Run npm run ucl:report to generate docs/missing-assets.md, an audit showing photo coverage percentage and coach status for each of the 36 clubs. Use it before and after ingestion to verify completeness.

Does the script force re-download of existing images?▼

By default existing optimized images are skipped, but adding the --force flag re-downloads and re-optimizes photos for the specified clubs. This is useful when UEFA updates official player or coach images.