
What is the Joomla Framework, and how can you use it?
When most people hear “Joomla,” they think of the Joomla CMS (Content Management System), a great tool to build websites. But Joomla is more than that! Behind the CMS, there’s something else: the Joomla Framework.
This is a set of small tools, written in PHP, that help developers build custom apps and scripts — not just websites. You don’t need to use Joomla CMS to use these tools. You can use them in other PHP projects too.
What’s Inside the Joomla Framework?
The Joomla Framework is modular. That means it’s made of many small “packages,” and each one does one thing.
- Database – Connect to and work with a database
- HTTP – Handle web requests and responses
- Files – Work with files on the server
- Events – Manage event-based actions
You can use any one of these on its own. No need to install Joomla CMS.
How to Use Them?
You can find these packages on Packagist.org. Use Composer to install them.
composer require joomla/http
Then in your PHP file:
require __DIR__ . '/vendor/autoload.php';
PHP Libraries: Don’t Reinvent the Wheel
When writing PHP code, you don’t need to build everything yourself. For example, if you want to create a PDF file, you can use a library that’s already made. Use Composer to add it to your project. Easy and efficient.
Joomla Also Uses Libraries
Joomla itself uses these libraries, stored in /libraries/vendor/
Important: Don’t update or change them yourself. Joomla updates them during its own updates.
Want to Use Extra Libraries in Your Own Extension?
You can! Just don’t put them in Joomla’s main library folder. Instead, put them in your extension folder:
/components/com_mycomponent/vendor/
This avoids conflicts and keeps things safe during updates.
Use Joomla Framework Without Joomla CMS?
Yes, you can! For small projects, you can just use a Joomla Framework package by itself. Example:
composer require joomla/registry
require __DIR__ . '/vendor/autoload.php';
use Joomla\Registry\Registry;
$registry = new Registry;
$registry->set('welcome', 'Hello Joomla world!');
echo $registry->get('welcome');
Real-Life Example: Show Joomla Articles Without Joomla CMS
I created a small app that shows Joomla articles without installing Joomla CMS.
You can find it on GitHub: github.com/pe7er/db8-joomla-framework-example
Features:
- No Joomla CMS required
- Uses Joomla Framework packages only
- Displays articles from Joomla database
- Styled with Bootstrap 5
- Easy to configure
Requirements:
- PHP 8.1 or newer
- Composer
- A Joomla 4 or 5 database
- Web server with access to
index.php
How To Install:
git clone This email address is being protected from spambots. You need JavaScript enabled to view it. :pe7er/db8-joomla-framework-example.git
cd db8-joomla-framework-example
composer install
Configure:
Copy .env.example
to .env
and enter your database settings.
Run the App:
php -S localhost:8000
Then visit http://localhost:8000 in your browser. You’ll see a list of Joomla articles.
Where to Learn More
- Joomla Framework website
- Joomla Framework at GitHub
- Joomla Framework Packages available on Packagist
In Short
The Joomla Framework is powerful and flexible. You can use it with Joomla — or on its own. Great for saving time and writing cleaner code.
All you need is Composer… and a bit of curiosity.