Skip to main content

Statusupdate Exposer 2.0

Posted in:

on by Marco

It's been a bit quiet here at nx-designs lately. But the reason was not that I was idle, quite the opposite. There has been a lot of work going on behind the scenes. Among other things on Exposer 2.0 - You can find out what the status is and what is planned for Exposer version 2.0 in this article.

Why it takes that long?

As some of you may know, I work full time (not for nx-designs) - (Joomla!) development is my “side job” (which is not only my hobby but my passion). After I finished my studies as a certified application developer last year, I started to make all extensions & websites for customer projects as well as the extensions you can get here Joomla 5.x compatible. This work was completed this summer.

Sidenote: Since I'm also a family person (and my autistic son needs me too), I can't devote all my free time to developing extensions. I hope you all understands that (Ok my Family as sidenote please don't tell this to my wife :-P).

The next step was to get to grips with the new possibilities of Joomla 5.x. In particular with the new MVC structure for Joomla modules. This summer I published the Joomla 4.x/5.x Blueprint Module on Github for the community (and myself, Sidenote: Exposer 2.0 was completely redeveloped on this blueprint).

And then, yes, then I had to start planning Exposer 2.0. What should be taken over from Exposer 1.x? What does the future of the WidgetsBox look like? More on the latter later (hint: all members will benefit). However, one of the most important features of Exposer 2.0 also caused the most headaches: Pagination. Now some of you will say - what's the problem? Well, remember Exposer is a module, not a component (and it should stay that way) so pagination must be done with AJAX. (Attention now it gets technical) I found / knew quite quickly how I could implement this (emphasis here is on “could”) but then had to realize during development that the simple use of the JS template engine meant an enormous effort because Exposer with its grid / list / table layout (all these should support pagination) became very large and the code in my opinion extremely complex and hardly maintainable (and I had just once implemented the basic functions yet no styling variables).

So whats the plan?

I'm not only a Joomla! (PHP) Developer, For my diploma exam I developed a JavaScript client-server application using the Vue.js framework (as well as Express.js etc.). So I already had knowledge of the various JavaScript frameworks. And Exposer will now benefit from this. For the UI of Exposer and especially for the grid / list and table templates, Exposer 2.0 uses a self-developed Angular (18) web component. Since Angular 18 is relatively new, I still had to familiarize myself with the subtleties of the current version. But we have been on our way for a few weeks now.

Creating a solid foundation

But there will not only be modernizations in the frontend, the core of the module has also been overhauled. In order to test some methods in a smaller environment, I recently “interposed” the development of my HyperionHub module (also a solution that I had wanted to develop for a long time). HyperionHub uses various techniques which I also plan to implement in Exposer, so I was able to test and prepare them in an extremely much smaller extension.

Current Status

As I wrote some of you already on request, the Module's Backend is about 75% finished. I am currently working on configuring the Angular web component based on the settings options in the backend. After all, everything should remain dynamic and as configurable as possible.

Ok, ok but when will it be done?

Exposer 2.0 will be released when it is ready. I can't yet predict “when” an effective release date will be, whether it will be weeks or months from now depends very much on how much time I can find alongside family, friends and my full-time job to pursue my favorite hobby.

Who will get the 2.0 Upgrade?

As already mentioned, a few things will change for WidgetsBox subscribers with the release of Exposer 2.0. Every active subscriber of the WidgetsBox module will also have access to Exposer 2.0 (in addition to the WidgetsBox 1.x license). The background is that WidgetsBox was developed as a simpler version of Exposer. With Exposer 2.0 the functionality of Exposer will be combined with the usability of WidgetsBox. The introduction of Exposer 2.0 heralds the end of support for the WidgetsBox. More on this in a separate article when the time comes.

Can I upgrade directly from Exposer 1.x to 2.0?

It is not necessary to upgrade the license. Subscribers to an active Exposer license will get the Exposer 2.0 download in the download area. An upgrade in the sense of an installation via extension update is not possible. Exposer 2.0 is a completely new development of the module and (apart from the name) no longer contains a single line of code from version 1.x under the hood. A direct update is therefore not possible. However, a guide will be published at the time of release at https://manuals.nx-designs.com.

Sneak Peak

Some of you may have already seen it, but here are some more insights into what you can expect in the new Exposer 2.0 backend: