Hi
@star Dust
Indeed ABMaterial may seem cumbersome at first.
I started with ABM a long time ago and was as puzzled by it as you are.
The simplest way to think of BAM (others will correct me if needed) is like this:
You have a launcher (main) that is responsible for the first settings etch like a normal b4j app (which ABM is)
Then you have a class to help every other class with the most common stud, like creating and defining header paragraphs, labels, etc.(ABMShared)
All other classes are kinda optional.
You can create a fully functional web pp with only these two classes (modules).
Still, you can set up several pages as stand alone (kinda) modules and have/add listeners that will redirect traffic to a particular page, like ABMRoot does.
As no man is an island, not is an ABM class, and this is whre it gets tricky.
ABMShared is probably the most important class in ABM Since almost every page or modules will eventually make calls to it...
Once you understand the role of this modules, every other module will be a lot easier to understand.