Beta / early access invite card

Growth is running a staged rollout. Each cohort gets its own invite card before the next group is let in. This happens per cohort, not once when the invite layout is first drawn. The cohort name changes, the perk list changes, and the start date changes. The card itself should not.

The person doing this is growth. They already have the cohort facts in a file. They should not redraw the card six times and hope the sixth still matches the first. They should not wait on a design pass for a perk list that is already text.

The job is one 1200×630 PNG per cohort. You fill { cohort, perks: [], startsOn }. You run export. You get that group’s card. Six cohorts means six small JSON files and six runs of the same command. The next cohort is another file. Nothing about the artboard changes between cohorts. The values do.

Give Lerret a React component under .lerret/ and optional data. export writes a PNG. Same component, data swapped, next image.

The component is .lerret/marketing/beta-invite.jsx. It draws the cohort name, what’s included, and the start date. Those three things are the whole card. The perk list is an array. A short list and a longer list both come from the same file.

Data is { cohort, perks: [], startsOn } per cohort, passed with --data. This is the first of the four bulk patterns: re-run export with a different --data file each time. Same components, new values, new images. There is no batch product, no queue, no orchestrator. You run the command again with the next cohort’s file. --data applies to every artboard in the run and is never written back into .lerret/. The six files live in the repo, so a PR can review the copy before anyone sends a card.

The image is a PNG at 1200×630.

A design file per cohort is six frames someone has to keep in sync by hand. A one-off export will not stay reviewable as text in the next PR. You use Lerret because six cohorts get six correct cards from six small JSON files, all in the repo, all reviewable in a PR. The fields are the file. The file is the review.

npx @lerret/cli@latest export --data

Start a project with npx create-lerret@latest. More in the use cases index.