learn
A grid of eight randomly generated smiley faces rendered as SVG, demonstrating component reuse in React with D3.js. Each face varies in stroke width, eye offset, eye radius, mouth width, and mouth radius, computed via `Math.random()` within the `range` utility from D3. The `Face` component composes `BackgroundCircle`, `Eyes`, and `Mouth` subcomponents, with the mouth path generated using the D3 `arc` generator. The faces are mounted into the DOM via `ReactDOM.render`, using D3 v5 and React 16.9.