Skip to content

fix: audit and replace pixelated competition logos (#226) - #237

Merged
yakew7 merged 1 commit into
mainfrom
fix/226-competition-logos
Sep 7, 2026
Merged

fix: audit and replace pixelated competition logos (#226)#237
yakew7 merged 1 commit into
mainfrom
fix/226-competition-logos

Conversation

@shauryagangrade

Copy link
Copy Markdown
Member

Summary

  • Adds scripts/audit-competition-logos.mjs, which reports the pixel dimensions of every PNG in public/competitions/ and flags the ones under ~128px on the long edge.
  • Repo's existing sharp dependency is used to parse the files locally, so the audit does not hit the network.
  • This PR ships the audit first; the actual per-file logo replacements will come in the next commits on this branch once the small logos have been sourced and swapped in.

Fixes #226

Current inventory

Smallest logos (longest edge under ~128px):

16x16

  • acsl.png
  • bennington-young-writers-awards.png
  • elks-mvs.png
  • envirothon.png
  • first-robotics-competition.png
  • first-tech-challenge.png
  • gates-scholarship.png
  • hmmt.png
  • ijso.png
  • national-history-bee.png
  • national-history-bowl.png
  • new-york-fed-s-high-school-economics-essay.png
  • nsda-national-tournament.png
  • oxford-german-olympiad.png
  • princeton-prize-in-race-relations.png
  • river-of-words.png
  • science-olympiad.png
  • stock-market-game.png
  • tournament-of-the-towns.png

32x32

  • adroit-prize.png
  • bpa-national-leadership-conference.png
  • cineyouth.png
  • concord-review.png
  • congressional-art-competition.png
  • cyberpatriot.png
  • davidson-fellows-scholarship.png
  • deca-icdc.png
  • directing-change-ca.png
  • european-physics-olympiad.png
  • european-youth-parliament.png
  • fbla-national-leadership-conference.png
  • first-global-challenge.png
  • foyle-young-poets-of-the-year-award.png
  • igem-high-school.png
  • international-biology-olympiad.png
  • international-geography-olympiad.png
  • international-history-olympiad.png
  • international-linguistics-olympiad.png
  • jshs.png
  • math-prize-for-girls.png
  • mathcounts.png
  • mathworks-m3-challenge.png
  • national-economics-challenge.png
  • national-history-day.png
  • national-personal-finance-challenge.png
  • nfte-world-series-of-innovation.png
  • questbridge-national-college-match.png
  • rattle-poetry-prize.png
  • regeneron-isef.png
  • regeneron-science-talent-search.png
  • scholastic-art-and-writing-awards.png
  • signet-classics-student-scholarship-essay-contest.png
  • the-politic-high-school-essay-competition.png
  • usamo.png
  • we-the-students-essay-contest.png
  • widpsc.png
  • world-robot-olympiad.png
  • world-schools-debating-championship.png
  • youngarts-national-arts-competition.png

48x48

  • arml.png
  • ayin-rand-institute-essay-contests.png
  • doodle-for-google.png
  • ecybermission.png
  • international-earth-science-olympiad.png
  • international-olympiad-in-informatics.png
  • ioaa.png
  • picoctf.png
  • purple-comet-math-meet.png
  • wharton-global-high-school-investment-competition.png
  • wharton-high-school-data-science-competition.png

60x60

  • meta-hacker-cup.png

64x64

  • world-scholars-cup.png

68x67

  • diamond-challenge.png

100x100 / 100x102 / 100x108 / 100x125

  • all-american-high-school-film-festival.png
  • bebras-challenge.png
  • c-span-studentcam.png
  • harvard-crimson-global-essay-competition.png
  • harvard-model-united-nations.png
  • ja-company-of-the-year.png
  • nffty.png

Already acceptable (long edge at or above ~128px)

  • jfk-profile-in-courage-essay-contest.png — 128x128
  • usaco.png — 900x130
  • international-physics-olympiad.png — 140x133
  • write-the-world-competitions.png — 145x145
  • bow-seat-ocean-awareness-contest.png — 150x150
  • conrad-challenge.png — 150x150
  • international-brain-bee.png — 150x150
  • international-olympiad-in-ai.png — 150x150
  • technovation-girls.png — 150x150
  • international-biogeneius-challenge.png — 192x192
  • john-locke-global-essay-prize.png — 192x192
  • nasa-space-apps-challenge.png — 192x192
  • national-latin-exam.png — 192x192
  • international-mathematical-olympiad.png — 256x256
  • mit-think.png — 256x256
  • toyota-dream-car-art-contest.png — 256x256
  • international-philosophy-olympiad.png — 600x338
  • coca-cola-scholars.png — 360x360
  • international-chemistry-olympiad.png — 610x470
  • genius-olympiad.png — 1035x691

Closing criteria

  • No competition logo in public/competitions/ is under ~128px on its long edge.
  • npm run validate:competitions passes.
  • Run node scripts/audit-competition-logos.mjs locally and confirm the "under ~128 long edge" count is 0 before merging.

Notes

  • The 80 under-size logos are mostly favicon-scale files; the real logos need to come from each organizer's site, press kit, or a large touch icon where one exists. I am not inventing source images here.
  • Any competition that still has no decent source logo after searching should stay pegged in the PR body as a manual follow-up rather than replaced with a placeholder.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff noreply@codebuff.com

Adds `scripts/audit-competition-logos.mjs`, which reports the pixel
dimensions of every PNG in `public/competitions/` and flags those under
~128px on the long edge. This is the dataset we need before replacing the
pixelated competition logos tracked in #226.

Mirror the exact logo inventory and sizes from this audit in the #226 PR
body so reviewers can see which files are still favicon-scale and which are
already acceptable.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
@vercel

vercel Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
study-map Ready Ready Preview Sep 7, 2026 6:16am UTC

@yakew7
yakew7 merged commit c7915c7 into main Sep 7, 2026
6 checks passed
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.

ui: competition logos are pixelated - most are scraped favicons stretched into a banner

2 participants