Joomla! Programmers Documentation
Manual Index
Get Started
Welcome to the Joomla Developers Manual¶
The purpose of this guide is to give developers an up to date guide showing best practice in writing and maintaining Joomla extensions. It's aimed at both developers of core Joomla extensions and those developing extensions either for their own use or for making generally available to others. It also offers a migration path for extensions from older Joomla! versions to the latest standard.
In this section we run through the tools and processes required to set up a local development environment with the ability to get the most out of the guide as a developer.
Quick start¶
To get started with developing your own extensions for Joomla you'll need to have a local web environment set up - eg using WAMP, Bearsampp or XAMPP.
It's very useful, though not essential, to have git and a PHP IDE installed as well.
Download Joomla from the Joomla download site and install it on your machine. Before you start trying to develop Joomla extensions you should really become familiar with administering a Joomla site - for example publishing articles, using categories and tags, defining menus and menuitems, setting up users, installing extensions and setting configuration parameters. You'll find plenty of information available online.
That's about it! We recommend that you start with developing a basic module. After that you can explore the General Concepts and try some of the sample extensions available in Building Extensions.
You can find an overview of how Joomla works by watching the video How Joomla Works - a guide for extension developers.
If you get stuck then raise a question on the Joomla forum or stack exchange sites.
Enjoy!
Community¶
- Check the latest state of the Joomla CMS code at GitHub
- Find the latest version at Joomla.org
- Join our Mattermost-Community
- Read the End-User documentation
- Join our forum
- Join Joomla Stack Exchange
Contribute to this documentation¶
The Joomla Developers Manual is implemented using Docusaurus, a system that can allow all users of Joomla to contribute to the documentation using Markdown language.
A good place to start, if new to Markdown, is the Markdown Guide https://www.markdownguide.org/
The documentation is maintained via the GitHub Joomla manual where you can at anytime create/edit/delete content to improve the documentation. Click the Edit this Page link at the bottom of this page to contribute via a Pull Request.
If you're intending to contribute regularly to the documentation then you'll probably find it helpful to get involved using the Joomla Mattermost community where you can liaise with others producing documentation, learn about the Docusaurus pitfalls to avoid, etc.