As a developer at Tekdi, I'm always exploring ways to streamline workflows while staying true to our core value of "giving back" to the open-source community. The promise of AI-assisted coding is compelling, but how does it fit into our philosophy of building sustainable, community-focused solutions? When a client asked me to add a new feature to an existing Joomla 3 custom component—a legacy project that needed to remain on version 3 for specific business requirements—I saw the perfect opportunity to test Cursor.ai while maintaining our commitment to open-source excellence.
The Initial Bumps in the Road 🚧
My first attempt was straightforward. I provided Cursor.ai with a prompt outlining my specific requirement, expecting it to understand the context and deliver a ready-to-use solution. I was mistaken. The AI generated excessive, unnecessary code that completely ignored Joomla's coding standards—the very standards that make our contributions meaningful to the broader Joomla community.
The result was a messy amalgamation of code that wouldn't integrate with the existing component.
After several frustrating hours with inconsistent results, I realized that AI, much like any powerful tool, requires intentional guidance to align with our values of creating reusable, community-benefiting solutions.
Establishing Standards: The Tekdi Way Meets AI 📐
I discovered Cursor.ai's "rules" feature and decided to approach this systematically. Drawing on our experience at Tekdi with establishing frameworks for consistent delivery, I collaborated with Gemini to generate comprehensive Joomla-specific rules and standards, which are now available on our [public GitHub repository](https://github.com/tekdi/joomla-cursor-rules) for the community to use and contribute to. Note that these rules are designed for the latest Joomla 5 version, though the principles proved adaptable for my Joomla 3 work.
This process embodied our belief in creating strong foundations for others to build upon. By establishing clear guidelines, I wasn't just solving my immediate problem—I was creating a reusable framework that could benefit future projects and potentially the broader Joomla development community.
With these new rules in place, the code quality improved significantly, though it still wasn't quite aligned with what the Joomla ecosystem needed. This experience reinforced something we've learned at Tekdi: the quality of any output—whether from AI or human collaboration—depends heavily on the clarity and thoughtfulness of the input.
The Power of Detailed PRDs: Treating AI as a Community Partner 📝
The breakthrough came when I realized I was approaching the solution without clearly articulating the problem and requirements. At Tekdi, we've learned that whether we're working with junior developers, open-source contributors, or now AI tools, clear communication is fundamental to creating value for the community.
I leveraged ChatGPT and Gemini to help generate a detailed Product Requirement Document (PRD) that went beyond feature lists. This comprehensive document outlined functionality, user flow, and technical specifications—treating the AI as I would treat a dedicated contributor to an open-source project.
When I provided this PRD to Cursor.ai, the transformation was remarkable. The AI began generating code that was much closer to what I had envisioned. It was as if I had finally given it the blueprint it needed to build the right structure. The code was more relevant and followed the logic I had laid out in the PRD.
Fine-Tuning: Leveraging Joomla's Core for Sustainable Solutions 🎯
Despite significant progress, I encountered a familiar challenge that we see even with human developers when working with open-source projects. Just as developers sometimes recreate functionality that already exists because they're unaware of existing code or best practices, Cursor.ai was doing the same thing—writing custom code for functionalities that already existed within Joomla's core.
This went against efficient development practices and our belief in leveraging existing, proven solutions. At Tekdi, we've learned that smart development comes from thoughtfully building upon existing frameworks and libraries rather than recreating everything from scratch.
I updated my rules with a crucial addition: "Prioritize the use of Joomla core code and components." I also refined my PRD to explicitly specify which core Joomla components should be utilized. This approach aligns with our value of "building for most, not for few"—by using proven, reusable components, we create more maintainable and reliable solutions.
The Results: AI as an Accelerator for Open-Source Development 🚀
With these final adjustments, the results were exceptional. The AI generated clean, standards-compliant code that seamlessly integrated with my component while leveraging Joomla's core functionalities. What could have taken me a week was completed in a day. The client requirement was met efficiently, and the solution was built using proven, maintainable approaches.
This experience reinforced a fundamental principle we live by at Tekdi: technology should serve as a catalyst for transformation—whether for our clients or the broader community. AI tools like Cursor.ai aren't shortcuts that let us skip thoughtful planning and proper understanding of existing frameworks. Instead, they're accelerators for developers who have done the work of understanding requirements, respecting standards, and knowing how to leverage existing open-source capabilities effectively.
Lessons for Working with AI and Open-Source Projects 🌟
Through this journey, I've learned that AI can significantly accelerate development with open-source frameworks like Joomla, but only when we approach it with the same discipline and knowledge that makes any development project successful:
Clear Communication is Universal: Whether working with AI, junior developers, or seasoned contributors, clear requirements and standards are essential for creating valuable outcomes.
Leverage Existing Capabilities: AI tools should enhance our ability to build upon existing open-source foundations, not encourage us to reinvent solutions that already exist in the framework.
Knowledge Transfer is Key: The better we understand the existing codebase and best practices, the better we can guide AI to generate appropriate solutions.
Standards Enable Efficiency: By establishing clear guidelines and frameworks, we create space for faster, more reliable development rather than chaotic experimentation.
The Broader Impact: Unlocking Developer Potential 🔓
At Tekdi, we believe in empowering organizations and individuals with technology. This experiment with AI-assisted Joomla development revealed something significant: when developers can leverage AI effectively with open-source projects, it doesn't just speed up individual client deliverables—it potentially unlocks much larger developer bandwidth.
The time saved on routine implementation tasks could be redirected toward more strategic work: contributing to open-source projects themselves, exploring innovative solutions, or tackling more complex challenges that truly require human creativity and insight. For the Joomla community specifically, this could mean more developers having the capacity to contribute back to the core project, create better extensions, or help other community members.
The knowledge that AI tools like Cursor can be effectively used to accelerate work with existing open-source projects is itself a contribution to the community—enabling more developers to work more efficiently with the frameworks they love.
The magic of creation that we cherish isn't diminished by AI assistance—it's amplified when we use these tools to solve client challenges more efficiently while maintaining our commitment to quality and best practices. When developers can work more effectively with open-source projects, everyone benefits: clients get better solutions faster, developers have more time for innovation and contribution, and the open-source ecosystem grows stronger.
This blog reflects ongoing experiments and learnings in AI-assisted development at Tekdi. We're committed to sharing these insights with open-source communities like Joomla as we continue exploring how emerging technologies can help developers work more effectively with the frameworks and tools we rely on every day.