Joomla component, module, plugin, template & language : Dissimilarity

Joomla is the second most popular cms. It is easily customizable and easily extendable. Joomla has a large list of extensions. The five different types of extensions used in joomla are components, modules, plugins, templates, and languages. There has always been confusing on the work of these extensions and which is used for what. Analyzing the difference between components, modules, plugins, templates, and languages can be difficult for a novice. Components are used to provide large scale functionalities to the website. The components can have features that may alter or add both front end or backend interfaces in the website. Templates are the extensions responsible for the the look and feel of a Joomla website. Background color, color scheme, font of various areas, images and other graphic elements are decided by the templates. Modules are the simple version of components with limited functionalities. Multiple modules can be used in single page unlike components. Plugins are mainly used for event handling in a website. Language extensions consist of INI file that contains key/value pairs. The language extensions are used to translate static strings from one language to another.