Render Props Pattern
Learn how the render props pattern shares logic by passing a function as a prop that returns JSX.
The render props pattern shares reusable behavior by having a component accept a function as a prop (often literally called render or passed as children) and calling that function with some internal state or data, letting the consumer decide what to render with it. The component owning the logic doesn't dictate the UI at all — it just supplies data via the function's arguments.
A render prop component is like a tour guide who narrates facts (the shared data) as you walk, but hands you a blank photo frame at each stop and lets you decide exactly what picture to take and how to caption it — the guide supplies the information, you control the output.