5 minutes reading time (1006 words)

My GSoC 2025 Journey Building Joomla's AI Framework

My GSoC 2025 Journey Building Joomla's AI Framework

When I first read about the GSoC 2025 AI Framework project, I was intrigued but completely unprepared. My background was in machine learning and deep learning- totally different beasts from AI API integration. I had zero experience with APIs, no clue about AI integration in websites, and honestly, no idea how to even start. But curiosity won. I had seen other CMS platforms embracing AI capabilities and wondered: why not Joomla? AI is what everyone is seeking right now, and Joomla! could take a significant step forward by integrating AI into its platform. 

The Transformation: From confused beginner to actually developing it

The reality hit hard during my first encounter with the codebase. It wasn't as smooth as I had imagined- not even close. But I embraced it as another opportunity to learn and grow. I was the person who knew theory but had never touched a real API. I understood neural networks but couldn't make a simple HTTP request or even know how to make that work. My technical skills have flourished, but more importantly, my confidence and communication abilities have undergone significant change. I now think in terms of developer experience and community impact. The community bonding period became my lifeline. Working on developing an architecture for the framework was the most significant step- it opened the way forward and actually showed some light of hope in making it work.

What We are Actually Building (And Why It Matters)

Picture this: You are a Joomla! extension developer who wants to add AI capabilities to your component. Today, you face this nightmare:

  • Want to add ChatGPT? Write specific code for OpenAI's API format, handle their authentication, manage their specific request structure.
  • Client prefers Claude? Completely rewrite everything for Anthropic's different interface and response format.
  • Need to switch to a local AI model like Ollama? Start from scratch with entirely different protocols.

Our AI Framework eliminates this pain completely. We are building a provider-agnostic AI API layer between Joomla! extensions and AI services. You might wonder how this relates to emerging standards like the Model Context Protocol (MCP). The difference is the focus: MCP is designed for tool exposure - allowing AI models to actually perform actions like creating articles, managing databases, or executing specific tasks. Our framework, however, provides the foundational communication layer for Joomla, establishing standardized interfaces for different AI providers. In other words, our current work makes it easier for Joomla! to “speak” to different AI providers, while MCP defines how those AI providers can “use” Joomla! tools. By establishing this foundation now, we aim to pave the way for MCP integration to become a natural next step. 

The Magic: One Interface, Multiple AI Powers

Here's what makes this framework revolutionary:

For Developers: You write your extension once using our simple interface. Whether your users want OpenAI, Anthropic, or Ollama running locally, your code doesn't change. We handle all the complex translation work behind the scenes.

For End Users: They simply configure their preferred AI provider through your extension's settings. Want to switch from ChatGPT to Claude? Just change the provider and add their API key. No technical knowledge required.

For Businesses: Start with one AI provider and switch to another based on cost, performance, or specific features without rebuilding anything.

Real World Applications: What This Enables

Smart Content Generation: Imagine a Joomla! component that helps you write blog posts, product descriptions, or SEO meta content. Users can choose their favourite AI provider, and it just works. A travel blog might prefer one AI for creative writing, while an e-commerce site might choose another for technical descriptions.

Multilingual Translation Services: Developers can create translation components that seamlessly work with different AI providers.

Intelligent Image Creation: Extensions for generating custom images for articles or products can be developed. Same extension, different AI engines, all configured through simple settings.

Dynamic Customer Support: Developers can build intelligent contact forms that provide smart responses, route inquiries, or suggest relevant help articles. Organizations can choose AI providers based on their specific industry knowledge or compliance requirements.

And Everything Creative You Can Imagine: The possibilities are limitless. Voice transcription services, automated social media content, intelligent form validation, personalized user experiences, content moderation tools, SEO optimization assistants- anything you can envision developing with AI providers through our unified framework.

The Technical Journey

We have successfully integrated OpenAI and Ollama so far, with Anthropic coming next. Each integration taught us something new. We have built the framework so developers never have to worry about the technical differences between AI providers.

The framework handles:

  • All the complex authentication differences between providers
  • Converting requests into each provider's specific format
  • Managing the different response structures
  • Error handling and even file uploads for image and audio processing

Developers focus on what their extension should do, not how to talk to each AI service.

Looking Forward: Beyond GSoC

Starting with zero API knowledge taught me that the best learning happens outside your comfort zone. Every error message became a lesson, every successful API call felt like a victory. The community bonding period showed me that good architecture is the foundation of everything- without those early planning sessions figuring out how to make this work, nothing else would have been possible. We weren't just building code; we were building the foundation for Joomla's AI.

My time at Joomla! has been transformative and pivotal. From someone who had no idea about AI integration to actually building it, that's a journey that has shaped how I think about technology, community, and the power of making complex things simple.

The GSoC 2025 AI Framework is currently in final development, with the core implementation in feature branches while we complete the documentation. We are aiming to have everything ready in the main branch within the next week or two. For those eager to experiment with it now, you can check out the feature branches on GitHub at gsoc25_ai_framework. We welcome contributions, feedback, and most importantly, creative implementations that push the boundaries of what is possible with AI in Joomla.

Some articles published on the Joomla Community Magazine represent the personal opinion or experience of the Author on the specific topic and might not be aligned to the official position of the Joomla Project

7
The August Issue
Back to the Future: 20 Years of Joomla!
 

Comments 1

Already Registered? Login Here
ANDI on Friday, 12 September 2025 07:22
Consider using the Symfony AI library

Why not consider using the Symfony AI library https://github.com/symfony/ai instead of building everything from scratch?
It could save time and resources, and provide a solid, well-maintained foundation to build on.

1
Why not consider using the Symfony AI library [url=https://github.com/symfony/ai]https://github.com/symfony/ai[/url] instead of building everything from scratch? It could save time and resources, and provide a solid, well-maintained foundation to build on.

By accepting you will be accessing a service provided by a third-party external to https://magazine.joomla.org/