3 designs
Node.js merch
JavaScript on the server, and the hexagon that announced it.

Keep Calm and Node On
The wartime poster with the Node hexagon on top, in red rather than the usual crown-and-white. A better pun than Keep Calm and React, and it knows it.

NestJS Logo
The dark red NestJS lion, drawn as a single sweeping mane. Noticeably more serious branding than most of the Node ecosystem manages, which fits a framework built to impose order.

Node.js Logo
The hexagon built from hexagons, in Node green and black. The shape reads as a molecule or a graph node, which is exactly the pitch: many small things, connected.
Node’s logo is a hexagon built from smaller hexagons, and the shape is doing something specific: it reads as a molecule, or a node in a graph, which is the whole pitch. Many small things, connected, handling one event at a time.
The decision Node represents was genuinely contentious. Running JavaScript on a server in 2009 struck a lot of people as a category error — JavaScript was the thing you tolerated in browsers, not something you’d willingly build a backend on. Ryan Dahl’s argument was about the event loop rather than the language: non-blocking I/O made sense for the kind of concurrent, network-bound work that was drowning thread-per-request servers.
It won more completely than almost anyone expected. Not because JavaScript was the best language for the job, but because one language across the stack turned out to be worth more than the marginal quality of the language itself.
NestJS is the other side of that story — Angular-flavoured structure imposed on a runtime famous for having none. It exists because “unopinionated” stops being a virtue somewhere around the fortieth file, and its dark red lion is a noticeably more serious piece of branding than most of the ecosystem manages.