Add, edit, generate, or organize image assets under src/jg/coop/images. Use for avatars, logos, posters, thumbnails, interest icons, project images, image formats, dimensions, cropping, or generated-image directories.
Installs into .claude/skills of the current project.
Are you the author of Images?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/juniorguru-images)
---
name: images
description: Add, edit, generate, or organize image assets under src/jg/coop/images. Use for avatars, logos, posters, thumbnails, interest icons, project images, image formats, dimensions, cropping, or generated-image directories.
---
# Images in junior.guru
After any change under `src/jg/coop/images`, run `uv run jg tidy` before finishing.
## Manually maintained assets
- `avatars-participants`: Profile pictures of speakers from `events.yml` and guests from `podcast.yml`. Use JPG, square dimensions, maximum 500 × 500 px.
- `avatars-quotes`: Profile pictures of people quoted on website. Use square dimensions and resample to reasonably small size.
- `logos`: Company and community logos used across website. Prefer SVG. Open every newly added SVG in Inkscape and crop page area exactly to logo with Ctrl+Shift+R; layout assumes tightly cropped bounds.
## Generated assets
Do not manually curate files generated by sync jobs unless task specifically concerns generator or checked-in fallback:
- `avatars-candidates`: Generated by `uv run jg sync candidates` from GitHub users registered as candidates.
- `avatars-club`: Generated by `uv run jg sync members` from custom Discord member avatars.
- `avatars-sponsors`: Generated by `uv run jg sync sponsors` from GitHub Sponsors avatars.
- `interests`: Generated by `uv run jg sync interests-icons`; programming-language and similar logos used for common interests on club landing page.
- `logos-jobs`: Generated by `uv run jg sync jobs-logos`; company logos used on jobs page. `unknown.webp` is checked-in fallback.
- `posters-events`: Generated by `uv run jg sync events` using event data and speaker photos from `avatars-participants`.
- `posters-podcast`: Generated by `uv run jg sync podcast` using podcast data and guest photos from `avatars-participants`.
- `posters-sponsors`: Generated by `uv run jg sync sponsors` using sponsor data and organization logos from `logos`; used to promote new sponsors.
- `thumbnails`: Generated by `uv run jg sync thumbnails` for website pages and used as `og:image`.
- `projects`: Generated by `uv run jg sync candidates` from candidate project READMEs or live-demo screenshots. `default.webp` is checked-in fallback.
Do not run `uv run jg sync` merely to populate these directories. Follow project sync authorization rules.
## Default project image
Edit source `src/jg/coop/images/default-project.svg`, then regenerate fallback:
```bash
magick -density 300 src/jg/coop/images/default-project.svg -resize 1280 -quality 80 src/jg/coop/images/projects/default.webp
```