8 designs
JavaScript merch
The language, the toolchain, and the pile of logos it accumulated.

Babel Logo
BABEL hand-lettered in yellow marker, deliberately rough. A compiler logo that looks like it was scrawled on a whiteboard, which suits a tool most people never think about.

Flow Logo
Flow's angular F in overlapping yellows and oranges. Meta's other type checker, comprehensively beaten by TypeScript, and increasingly a collector's item.

JavaScript Logo
The yellow square with two black letters. No foundation designed it and no one owns it — the community adopted a logo somebody posted on GitHub and never looked back.

Jest Logo
The dark red jester's hat, bells and all. Testing framework branding rarely bothers with a character; Jest committed to the pun and drew the whole hat.

TypeScript Logo
The blue TS square. Somewhere between 2015 and now this stopped being a preference and became the default, and the logo went from niche to unavoidable with it.

Webpack Logo
The isometric blue cube with the wordmark alongside. A genuinely elegant mark for a tool whose configuration file has reduced grown adults to tears.

Yarn Logo
A white cat tangled in a ball of wool, in a blue circle. The joke being that Yarn was meant to untangle dependency management, and the mascot is thoroughly caught in it.

Yeoman Logo
The Beefeater in a bearskin hat, tipping his cap. Scaffolding tools came and went, but nobody else in JavaScript ever picked a Yeoman Warder as their mascot.
The JavaScript logo is a yellow square with two black letters, and it is unusual among language marks in that nobody officially designed it. There is no foundation, no brand guidelines, no trademark holder to ask. Chris Williams put it on GitHub in 2011, the community adopted it, and that was that. It is probably the most widely reproduced programming logo in existence and it belongs to no one.
What makes the JavaScript ecosystem interesting as a subject is everything that grew around it. Almost every other mark here exists because JavaScript needed patching: TypeScript because the type system was missing, Babel because the language moved faster than browsers, Webpack because modules arrived a decade late, Yarn because npm was slow, Jest because testing was miserable.
Each one is a small monument to a gap. Line them up and you have an accidental history of the language’s problems, drawn in flat colour.
The tooling logos also happen to be well designed, which is not a given. Babel’s hand-lettered yellow scrawl, Webpack’s isometric cube, Yarn’s cat tangled in wool — these are marks with actual personality, made by people who cared, for projects most developers only think about when they break.