Today more and more applications on the web have started moving towards an 'API First' architecture and abstracted javascript driven frontends. Micro services isn't just a buzzword anymore and node.js is very much mainstream.

While Joomla! will stay probably stay married to its PHP code base for a long time to come (and nothing wrong with that), it is important that we start looking at providing an easy way for other applications to interact with data in Joomla! natively without needing any extensions like com_api. While becoming 'API First' will still take more time, having APIs in the core will be very important to solve quickly. While Joomla 4 is expected to introduce this in the core, it will need quick adoption by key extension providers to give Joomla the feature it needs to ensure it is considered in adoption decisions for several use cases in the enterprise as well as consumer space. 

Having APIs in the core will pave the way for alternative frontend implementations on top of the Joomla APIs using 'in' languages like Angular and React. While we have been creating Angular based applications for some time now using Joomla based APIs at the backend, its still needs quite a few jumps through hoops to get it right not to mention having to write API plugins.

We have been taking this approach with several projects now to be future ready and for the obvious performance benefits it has shown to offer. TJ Dashboard, the new infra extension we are building for creating Dashboards in Joomla (coming soon) is written in an API first manner with JS widgets for display and control. If you develop custom applications and projects with Joomla, you should be able to take an approach similar to the above even now using some extensions. However if you are an extension developer, its a little harder to do this since you have to ensure you play well with other extensions. 

While I don't believe that Content management systems that have an 'API Only' approach will be relevant for the traditional CMS audiences any time soon, they have their uses. However a CMS that takes an API first approach while maintaining its coupled interfaces definitely will be relevant and useful for the traditional audience while offering the benefits of a API first approach. Drupal has been working on both an API first approach for some time now You can look at Dries's posts on this topic here. Recently they also announced that they are considering adopting React in the core. While going API first will be hard and take time, we do need to start brainstorming and talking about it. Drupal has been making just the right noises and moves in this area for some time now and are ahead in this game. And we do have a great deal to learn from them, an advantage that starting late has given us.  

One could argue for hours that "Our Audience' which is widely believed to be mid level web agencies do not need an option to have a completely decoupled or even a progressively decoupled option of Joomla, it is only a matter of (very less) time before it will be very much a requirement as the benefits of both a Webservice first approach as well as an option of a decoupled frontend starts becoming attractive to the smaller businesses. 

This is an article I have been meaning to write for a while and its not as in depth and well articulated as I'd like it to be. But hopefully the content is clear. I would love the feedback on the same. Do comment and tell me your thoughts on the subject. 

Building a Sustainable Ecosystem for Joomla

In this session, I hope to introduce a strategy and thought process that will help make the Joomla! ecosystem more sustainable and create more opportunities for growth. I will also explore who are Joomla's users & markets and how we can best service them and also expand into newer markets. 

In the last 10 years, The Internet has evolved from being a geek’s paradise to a consumer ecosystem. How should Joomla Adapt to this change ? Who should it target as its first line users ? 

The unique way in which Joomla's ecosystem has evolved and due to how the software is structured opens up many interesting opportunities for Joomla! to go into its 2nd decade ! Learn this and more in this exploration. 

Read the full blog on Medium!

Read on Medium ...

The Joomla core as well as the core extensions between them have lots of configuration settings. If you add 3rd Party extensions to the mix, these run into hundreds. If the Joomla core provided an import/export options setting as 'infrastructure' to any extension using Joomla's way of storing options, i think it will benefit a lot of Site builders and admins. 

If you have ever uninstalled an extension for whatever reason and needed to install it again, you will know the pain of having to reconfigure the extension. Also if you are a site builder who builds sites regularly, then you will have your own way in which you setup Joomla and its various extensions. If you had a way to store your pet way of doing things, you will get a head start when you start setting up a new site by importing your stored settings. 

What do you think about this as a new feature for Joomla ? Do you think its worth the time to code it in ? Do comment and let me know your feedback ! 

Joomla Git RFC : https://github.com/joomla/joomla-cms/issues/11904 

https://github.com/joomla/joomla-cms/issues/11904 

The Internet Evolution and Joomla

10 years is a long time. Its even longer if you think in terms of Software or Internet parlance. The last 10 years for the internet have been game changing and evolution has happened at breakneck pace. New economies have bloomed and others have died out. What was 10 years ago a paradise for geeks is now a thriving ecosystem with more and more consumers coming on board everyday. 

Read the full article on the #joomla community magazine to know what this means for the world of content management systems and specifically Joomla!

Read on JCM ...