Skip to content

Examples gallery is awesome-noodles again, and stays that way - #367

Merged
mikkel merged 1 commit into
mainfrom
feat/examples-mirror-awesome-noodles
Jul 24, 2026
Merged

Examples gallery is awesome-noodles again, and stays that way#367
mikkel merged 1 commit into
mainfrom
feat/examples-mirror-awesome-noodles

Conversation

@mikkel

@mikkel mikkel commented Jul 24, 2026

Copy link
Copy Markdown
Member

The 📚 Examples list had drifted from awesome-noodles in both directions, and the six noodles it did share had all moved on upstream.

before now
combine-images, render-a-mockup, favicon missing here added
style-switchboard, text→video, extend-a-video, auto-dub here only (pulled upstream by 9d0cc04) dropped
the six overlapping noodles stale 07-19 copies re-ported

That last row was the quiet one. photo→video had grown an LLM that writes the motion prompt, sing a bands/style fan-out, talking-avatar a movement node, edit-a-photo a separate prompt node — visitors were clicking the older, simpler versions.

The gallery is now exactly the nine noodles in that repo, plus the two Cookoff winners already on the 🏆 shelf.

Pinned models are now kept

The gallery used to strip fields.model and let backfillModel pick the newest catalog model. That's reversed here, because the pinned model IS the example:

  • the arena races gpt-image-2 / nano-banana-2-fast / qwen-image-3 / krea-v2-large instead of four copies of whichever model is newest (which cost 4× for four near-identical images)
  • photo→video runs the ltx build its motion-prompt guide was written for
  • sing and talking-avatar keep the music and lipsync models they were tuned around

The trade is that ids age. A retired id still loads but refuses to send at run preflight — no charge, but a starter workflow that can't run is a bad first click, and nothing would otherwise tell us. Hence the audit below.

Keeping it in sync

  • scripts/sync-examples.mjs regenerates the array from the repo. --check is pre-commit gate 39: it fails on content drift, an upstream noodle with no card, or a card whose graph is gone. Skips (exit 0) with no sibling checkout, so nobody without it is blocked.
  • scripts/check-example-models.mjs audits every pinned id against the live catalog, monthly in CI alongside the LoRA audit. Catches both a retired id and one the catalog still lists that the app already knows is dead. A catalog outage exits 0 rather than crying wolf.

Also

Three new 112px thumbnails rendered to match the house style; 10 dead i18n keys × 5 languages removed, 8 new × 5 added.

Verification

Full scripts/check-*.mjs suite green. Driven in a real browser over CDP: all nine examples load with exact node/link counts, zero node errors, every pinned model resolving against the live catalog. Both audit failure branches negative-tested by injecting a retired id and a known-dead id.

🤖 Generated with Claude Code

The 📚 Examples list had drifted from github.com/nanoodlecom/awesome-noodles in
both directions: combine-images, render-a-mockup and favicon were added upstream
and never landed here, while style-switchboard, text→video, extend-a-video and
auto-dub lived on here after being pulled from the repo. The six overlapping
noodles had moved on upstream too — photo→video grew an LLM motion-prompt writer,
sing a bands/style fan-out, talking-avatar a movement node, edit-a-photo a
separate prompt node — so visitors were being shown the older, simpler versions.

The gallery is now exactly the nine noodles in that repo, ported verbatim, plus
the two Cookoff winners already on the 🏆 community shelf. Three new 112px
thumbnails rendered to match the existing house style; i18n keys for the four
dropped entries removed and eight new strings translated across es/fr/de/pt/ja.

Verbatim includes the pinned fields.model, which the gallery used to strip in
favour of backfilling the newest catalog model. The pinned model IS the example:
the arena now races gpt-image-2 / nano-banana-2-fast / qwen-image-3 / krea-v2
instead of four copies of whichever model is newest, photo→video runs the ltx
build its motion-prompt guide was written for, and sing/talking-avatar keep the
music and lipsync models they were tuned around.

Pinning trades one failure mode for another: ids age, and a retired one loads
fine but refuses to send at run preflight (no charge, but a starter workflow
that can't run is a bad first click). New scripts/check-example-models.mjs is
the alert — it audits every pinned id against the live catalog monthly, catching
both a retired id and one the catalog still lists that the app knows is dead.

New scripts/sync-examples.mjs regenerates the array from the repo and, as
pre-commit check 39, fails on any drift — content, an upstream noodle with no
card, or a card whose graph is gone. It skips when the sibling checkout is
absent, so nobody without it is blocked.

Verified in a real browser over CDP: all nine load with exact node/link counts,
no node errors, every pinned model resolving live.

Update: Examples now mirror the awesome-noodles gallery — combine images, render a mockup and favicon join the list.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@cloudflare-workers-and-pages

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
nanoodle e4f4adb Commit Preview URL

Branch Preview URL
Jul 24 2026, 01:31 PM

@mikkel
mikkel merged commit 509793f into main Jul 24, 2026
3 checks passed
@mikkel
mikkel deleted the feat/examples-mirror-awesome-noodles branch July 24, 2026 13:33
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