Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.

Val Town Community Showcase

This val powers the Community Showcase (https://www.val.town/explore/community-showcase) — the hand-picked gallery of great things the Val Town community has built. The showcase page fetches this val live at https://showcase.val.run, so editing the staffPicks array in main.tsx here updates the page directly.

Want your app featured? Read on. 👇

Want your app in the showcase?

There are two paths depending on who you are:

If you work at Val Town

You can edit this val directly. Add an entry and a card image:

  1. Open main.tsx and add a new object at the top of the staffPicks array (just inside the [). Use the entry shape below, with a unique id bumped above the current max.
  2. Make a card image (the floating browser-window-on-a-pastel-gradient look) and upload it to Cloudflare Images — see "Card image" below and the full SKILL.md in this val for the exact recipe.
  3. Save. The change goes live immediately at https://showcase.val.run and on the showcase page.

If you don't work at Val Town (everyone else 💛)

Please open a pull request on this val instead of editing it directly:

  1. Open this val: https://www.val.town/x/valdottown/staffPicks
  2. Create a branch (use the branch menu in the Val Town editor), add your entry to the top of the staffPicks array in main.tsx, and add a card image (see below).
  3. Submit a pull request from your branch. A Val Town team member will review it, make sure the card looks right, and merge it.

Not sure how to make the card image? No worries — open the PR with just the entry (and a screenshot or link to your app) and we'll help with the image.

Entry shape

{ "id": "53", // unique string; bump above the current max "type": "project", // "project" or "val" "name": "Display Name", "description": "One warm sentence describing the app.", "handle": "yourHandle", // your Val Town username "projectName": "the-val-name", // for type:"project" (use "valName" for type:"val") "imageUrl": "https://imagedelivery.net/iHX6Ovru0O7AjmyT5yZRoA/<id>/public" }

The card links to /x/{handle}/{projectName} for projects, or /v/{handle}/{valName} for vals.

Card image

Each card is a screenshot of the app composited into a floating browser window on a soft pastel gradient (cropped ~1.91:1, hosted on Cloudflare Images).

Important: the browser window must float in the middle of the card with generous, roughly equal margins on all four sides — it should NOT fill the frame or sit cramped against the top/edges. Match (or exceed) the padding on the "Spend Agent" card. The window should be no more than ~72% of the card width and vertically centered.

The full step-by-step recipe (screenshot command, the exact gradient + window CSS, and the Cloudflare upload) lives in SKILL.md in this val.


Staff Picks, hand-curated by Team Val Town.