How JavaServer Faces Renders the UI
UI components: Server-side objects that are independent of the target client and render back to the client by using external renderer classes; consist of attributes, behaviors, and renderers
Renderers: Classes that reside on the server and are responsible for displaying the UI component in a graphical representation that is understood by the client
Render Kits: Renderer classes packaged into libraries that enable you to develop a JSF application for different client devices (such as browsers, PDAs, smart phones, or telnet) without altering application code. A render kit for an HTML client is part of standard JSF.