]A theme is the look and feel and outline of a geeklog website. It should never be the case that the usage of a specific theme requires code changes. A theme is configurable (as is language too).
A theme uses templates to render content.
A theme could deliver different content for the admin, the logged-in user and the anonymous user.
A theme could deliver different look-and-feel's for the admin, the logged-in user and the anonymous user.
A theme can be responsive.
A template is a general purpose macro text body that reflects the blueprint for a page or page component. Templates are used for layouts (and refererence by design the (wire)frames). And complex themes may embed their skins in them too. It consist of content (text) with replaceable parameters (variables), they get parsed and may be recursive, either in itself, either by code.
A templet is the workhorse of the template. As opposed to a template that accepts a tRoot (template root directory) and loads the macro text from files, the templet accepts a inline parameter as macros text. Obviously templets process short macro's, also called snippets. A templet is not cache-able.
A framework is a library and is declared to rule the application of css in a dynamic way. In general a framework is based on css and intends to give the geek log website a responsive character.
A skin is a look and feel concept that can be applied to pages or their components. It contains a set of browser instructions. Therefor it bundles css, icons, a color-scheme. It should never be the case that the usage of a specific skin requires code changes other than invoking them.