Playground for creating stateless Web applications with HTML5, CSS, JavaScript and PrimeUI on the client side and Java EE 6/7 with the JAX RS module that does the communication in JSON format on the server side.

Saturday, 7 June 2014

AngularPrime will be replaced by AngularWidgets

Introduction

This text will explain why I made the decision to replace
the AngularPrime library with the new AngularWidget library.

How AngularPrime started?

When I was learning AngularJS about 1 year and half ago, I saw
the similarities between JSF and AngularJS (see also here) which
was very familiar for me.

At that same time, the Primefaces JSF widgets were ported to
jQuery and made available as PrimeUI.That led me to the idea to use the PrimeUI widgets in an AngularJS
format. And so AngularPrime widget
started.

The integration went quit smooth.I could use the PrimeUI code in almost
unaltered form and needed to write some integration code so that the widgets
played well with AngularJS

What went wrong.

During the last year I realised a few things about my work
that I did.

I wanted to bring AngularPrime closer to PrimeFaces.I did some test, some conclusions can you
read here, and they went very well. The problem I have is that all my AngularJS directives are defined as
attributes. So transforming them into tags and use the naming of PrimeFaces,
proved a lot of work.

Most of the time, there was a small tweak
needed in the code of the PrimeUI widgets. Updating the code when the PrimeUI
code changed, took some time. And making the changes in the code of PrimeUI was not
always an option as some code tweaks had nothing to do with the functionality
of the PrimeUI widgets

And most of all, the code was using jQuery and
jQuery UI.These frameworks are not
always popular in the AngularJS community. And indeed, I did already a small
test last year and it is perfectly possible to create almost identical looking
widgets with the same functionality by just using AngularJS code alone. (here you can read how to extend jQueryLight of AngularJS for this purpose)

AngularWidgets

So for the last few months, I was considering starting al
over again. I doubted for a long time, I had put a considerable amount of time
in AngularPrime, but now the decision is made.AngularPrime is stopped and AngularWidgets is started.

It will make maximum use of the tag and attributes names of
PrimeFaces.

It will probably take some time before the first commit
appears on GitHub as summer is started.And I want to spent first some time with the family.

Code will be available on GitHub and will also be licensed under the Apache v2 License.