Station 11 · Components & props
You have seen the cards on every page of this boat — the Pokemon card, the UFC card, the Helldivers card. We did not write them three times. We wrote one Poster recipe and handed it different ingredients three times. The recipe is a component; the ingredients are props.
Below is the recipe, then three stampings. Change a title, pick a different accent — watch one card respond, the recipe stay still. That is the whole idea: many cards from one factory.
1function Poster({ title, accent, line }) {2return (3<article className="card" style={{ borderColor: accent }}>4<p style={{ color: accent }}>{line}</p>5<h3>{title}</h3>6</article>7);8}910<Poster11title="Pokemon"12accent="#C9A14E"13line="Specimen Cabinet"14/>15<Poster16title="UFC"17accent="#D26464"18line="Sporting Club"19/>20<Poster21title="Helldivers"22accent="#9CA994"23line="Munitions Deck"24/>
Edit a prop on the right and watch only its card change. Same factory, different stampings.
Specimen Cabinet
Sporting Club
Munitions Deck
Three cards, one component. The Poster function is the factory; the props are the slip of paper you hand it for each stamping. Every card, button, and badge on this site is built this way — one factory, dozens of stampings.