CMS Architecture in 1.5 and 1.6

From Joomla! Documentation

Revision as of 14:35, 21 July 2012 by Tom Hutchison (Talk | contribs)

Replacement filing cabinet.png
This page has been archived - Please Do Not Edit or Create Pages placed in this namespace. The pages in the Archived namespace exist only as a historical reference, it will not be improved and its content may be incomplete.


A software framework is a reusable design for a software system (or subsystem). This is expressed as a set of abstract classes and the way their instances collaborate for a specific type of software. Software frameworks can be object-oriented designs. Although designs don't have to be implemented in an object-oriented language, they usually are. A software framework may include support programs, code libraries[1], a scripting language[2], or other software to help develop and glue together the different components of a software project. Various parts of the framework may be exposed through an application programming interface (API).

From Wikipedia

Joomla Architecture.jpg

Joomla! 1.5 is a three tiered system:-

  • The top, Extensions layer, consists of Extensions to the Joomla Framework and its applications:
  • The middle, Application layer, consists of applications that extend the Framework JApplication class. Currently there are four applications included in the Joomla distribution:-
    • JInstallation is responsible for installing Joomla on a web server and is deleted after the installation procedure has been completed.
    • JAdministrator is responsible for the back-end Administrator.
    • JSite is responsible for the front-end of the website.
    • XML-RPC supports remote administration of the Joomla website.
  • The bottom, Framework layer, consists of:-
    • the Joomla Framework itself, whose classes are listed below.
    • Libraries that are required by the Framework or are installed for use by third-party developers.
    • Plugins extend the functionality available in the Framework.


  1. See also PHP libraries bundled with Joomla!
  2. See also JavaScript libraries bundled with Joomla!