Joomla is a free and open-source content management system CMS for publishing web content, developed by Open Source Matters, Inc. It is built on a model–view–controller web application framework that can be used independently of the CMS.
Joomla is written in PHP, uses object-oriented programming techniques since version 1.5 and software design patterns, stores data in a MySQL, MS SQL since version 2.5, or PostgreSQL since version 3.0 database, and includes features such as page caching, RSS feeds, printable versions of pages, news flashes, blogs, search, and support for language internationalization.
Over 8,000 free and commercial extensions are available from the official Joomla Extensions Directory, and more are available from other sources. As of 2019, it was estimated to be the fourth most used content management system on the Internet, after WordPress and Drupal.
Joomla was the result of a fork of Mambo on August 17, 2005. At that time, the Mambo name was a trademark of Miro International Pvt. Ltd, who formed a non-profit foundation with the stated purpose of funding the project and protecting it from lawsuits. The Joomla development team claimed that many of the provisions of the foundation structure violated previous agreements made by the elected Mambo Steering Committee, lacked the necessary consultation with key stakeholders and included provisions that violated core open source values.
Joomla developers created a website called OpenSourceMatters.org OSM to distribute information to the software community. Project leader Andrew Eddie wrote a letter that appeared on the announcements section of the public forum at mamboserver.com. Over one thousand people joined OpenSourceMatters.org within a day, most posting words of encouragement and support. Miro CEO Peter Lamont responded publicly to the development team in an article titled "The Mambo Open Source Controversy — 20 Questions With Miro". This event created controversy within the free software community about the definition of open source. Forums of other open-source projects were active with postings about the actions of both sides.
In the two weeks following Eddie's announcement, teams were re-organized and the community continued to grow. Eben Moglen and the Software Freedom Law Center SFLC assisted the Joomla core team beginning in August 2005, as indicated by Moglen's blog entry from that date and a related OSM announcement. The SFLC continue to provide legal guidance to the Joomla Project.
On August 18, Andrew Eddie called for community input to suggest a name for the project. The core team reserved the right for the final naming decision and chose a name not suggested by the community. On September 22, the new name, Joomla!, was announced. It is the anglicised spelling of the Swahili word jumla, meaning all together or as a whole that also has a similar meaning in at least Amharic, Arabic and Urdu. On September 26, the development team called for logo submissions from the community and invited the community to vote on the logo; the team announced the community's decision on September 29. On October 2, brand guidelines, a brand manual, and a set of logo resources were published.
Joomla has thousands of verified third party extensions which can be found on the Joomla Extensions Directory - extensions.joomla.org. There are also thousands of high end templates available, many of which are free. Paid templates are also available and come with support. Many templates provide a graphical user interface which allow you to change colors, fonts, layouts and features. Joomla has SEO tools built in. Includes Metadata and Keywords, Mod_rewrite support for SEF URLs and Menu creation for clear and consistent sitemaps.
On April 25, 2014, the Joomla Production Leadership Team announced that it started following 'Semantic Versioning Scheme' for new Joomla builds. The earlier LTS Long Term Support and STS Short Term Support lifecycle policy is no longer observed. Joomla version 3.3.1 was the first version released under the new development strategy.
Like many other web applications, Joomla may be run on a LAMP stack.
Many web hosts have control panels for automatic installation of Joomla. On Windows, Joomla can be installed using the Microsoft Web Platform Installer, which automatically detects and installs dependencies, such as PHP or MySQL.
Joomla utilises a configuration file configuration.php, usually located in the root of the Joomla installation to control various settings including but not limited to database connection settings. Due to the use of a configuration file, migrating from one server to another is relatively simple.
There are two large Joomla conferences each year. Joomla and Beyond is a conference largely aimed at Joomla developers and site integrators and is hosted in Europe around May each year. The Joomla World Conference that brings together developers, designers, site administrators, business owners, and community members is held in the latter half of the year. Each year Joomla communities hold their own country or regional JoomlaDays. Joomla also, like many coding communities hosts many regional user groups as well.
Joomla extensions extend the functionality of Joomla websites. Eight types of extensions may be distinguished: components, modules, plugins, templates, languages, libraries, files and packages. Each of these extensions handles a specific function. Many of the extensions built by the Joomla Community are not free but require a payment for download.
The Joomla CMS has received many awards and recognitions since it was created in 2005.