B4J Library [ABMaterial] Framework for WebApps

TIP: For absolute beginners with ABM, Get started with the Mini Template
TIP: Get started with 'ABMaterial For Dummies' by Harris here! (lessons)
TIP:
My mini course on Youtube by MichalK73

ABMaterial is a framework combining a tuned Materialize CSS with the free programming tool B4J. It allows creating WebApps that not only look great thanks to Googles Material Design, but can be programmed with the powerful free tool from Anywhere Software without any knowledge of HTML, CSS or Javascript.

ABMDragonfly4.00.png


ABMaterial has over 45 themeable controls and some useful helpers.

Components:

  • ABMActionButton
  • ABMAudioPlayer (1.08)
  • ABMBadge
  • ABMButton
  • ABMCanvas
  • ABMCalendar
  • ABMCard
  • ABMChart (Plugin support 2.00)
  • ABMChat (2.50)
  • ABMCheckbox
  • ABMChronologyList (2.00)
  • ABMCombo
  • ABMCustomControl (1.05)
  • ABMChip
  • ABMCodeLabel
  • ABMDivider
  • ABMDateTimeScroller (1.06)
  • ABMDateTimePicker (1.06)
  • ABMEditor (1.07)
  • ABMFileInput (1.20+)
  • ABMGoogleMap
  • ABMLabel
  • ABMList
  • ABMImage
  • ABMImageSlider
  • ABMInputField
  • ABMRadioGroup
  • ABMPagination (1.04)
  • ABMPatternLock (1.20+)
  • ABMPDFViewer (1.08)
  • ABMPercentSlider (2.50)
  • ABMPlanner (2.50)
  • ABMPivotTable (1.08)
  • ABMRange (1.05)
  • ABMSignaturePad
  • ABMTimeLine (1.10, depreciated in 4.00)
  • ABMSlider (1.05)
  • ABMSmartWizard (3.00)
  • ABMSocialShare (1.07)
  • ABMSocialOAuth
  • ABMSVGSurface (1.20+)
  • ABMSwitch
  • ABMTabs
  • ABMTreeTable (1.04)
  • ABMUpload
  • ABMVideo

Helpers:
  • ABMContainer
  • ABMFlexWall (1.10)
  • ABMGenerator (1.07)
  • ABMModalSheet
  • ABMNavigationBar
  • ABMPage
  • ABMParallax
  • ABMSideBar (2.00)
  • ABMTable
  • ABMTableMutable (1.20+)
Other:
  • Firebase Auth (1.20+)
  • Firebase Storage (1.20+)
  • Configurable App and Content folders (2.00)
  • Lorem Ipsum Generator (2.00)
  • Grid Builder (2.00+)
The Grid Builder:
With the Grid Builder you can build the responsive framework very easy. This has been the most difficult part for beginners to understand. But now with the builder, you have no reason to not use ABMaterial :)

gridbuilder1.png


Included is a extensive Demo application demonstrating a lot of the functionality of ABMaterial. In itself, the app is also some kind of tutorial. I suggest you start the app in B4J, open your browser and go to http://localhost:51042/demo. You can browse the objects and test them out, but when you want to start to program I suggest you start at 'Getting Started' and follow the guidelines through the chapters suggested at the end of each page.

There is also an online demo at http://abmaterial.com
Alternative url: http://prd.one-two.com:51042/demo/

Don't forget: Everyone (not only donators!) can use the feedback app:

NEW: You can now support BANano and ABMaterial here too: https://www.patreon.com/alwaysbusy


This means it is free to use, but consider this: it took me already thousands of hours to program ABMaterial, all done in my free time early in the morning and deep into the night. Not only will a donation push me to continue developing ABMaterial , remember, you'll get a warm and fuzzy feeling doing it!

Donators get the latest versions in their mailbox a couple of weeks before the public, and an extra goodie now and then...

Current extra goodies:

ExtraLibs2.png



IMPORTANT NOTE: MyMaterial.Show / ABMaterial.Show/ Pen&Paper / MashPlugins is in no way affiliated with the ABMaterial library and I will not give support for it nor for what it generates as it has violates the ABM LICENSE AGREEMENT.

Read this if you are planning to use any of the above mentioned tools:
https://www.b4x.com/android/forum/t...olation-with-the-abm-license-agreement.87773/

Download the latest public version (4.51) with demo projects:
ABMaterial is to big to upload to the forum, so you can get it via dropbox. Included is a README 4.51.TXT files. IMPORTANT INFO on this release is in there so read carefully!

Note: You'll also need the PDFJet library from the B4X Forum and jServer 2.75+.

IMPORTANT: If you use B4J 5.80+ you have to make this change: https://www.b4x.com/android/forum/threads/abmaterial-important-change-for-b4j-5-80.81595/


Just unzip the file and you'll find several folders: Demos, Library, Template. Start the demo and all the rest is explained in the Getting Started section.

Download version 4.95 (open source, library only):
ABMaterial 4.95 is now available on github and is open sourced :cool: (AS IS)! This version has been in heavy use (development and production) within our company for over a year now without major alterations, so I consider it very stable and ready to be open sourced.

I trust no one here will publish a clone or take credit for my work and I would consider it common courtesy if you find a bug/fix/new feature, you report back to me so I can make the same changes in the official library and everyone can benefit from it.

Github (source + binary release 4.95): https://github.com/RealAlwaysbusy/ABMaterial-Source

Note: next to downloading the library, you need also to download the accompanying www zip files from the same github (releases) containing the latest javascript/css/font files.

The procedure from Github for 4.95:

1. Download https://github.com/RealAlwaysbusy/ABMaterial-Source/releases/download/v4.95/ABMaterial4.95-bin.zip
2. Download https://github.com/RealAlwaysbusy/A...ses/download/v4.95-www-fix220111/www4.95b.zip
3. Unzip ABMaterial4.95-bin.zip and copy all .xml and .jar files to you B4J Libraries folder
4. Unzip www4.95b.zip
5. In the projects you are working on (e.g. a for Dummies project) delete the following folders in \www
  • css
  • font
  • js
6. Copy from the unzipped www4.95b.zip the 3 folder (css/font/js) to the \www folder where you just deleted these 3 folders.

I hope you enjoy it as much as I did creating it and I look forward to see the killer apps you will make with ABMaterial!

Also consider BANano if you are planning to write Websites/Apps in B4J!

Alain Bailleul
Alwaysbusy's Corner
 
Last edited:

Cableguy

Expert
Licensed User
Longtime User
Will it still support jServer 3.0 ? We have a lot of servers using jServer 3.0 (Java 8). At the moment we have no plans to move to Java 11+.
It's my undersranding that ABMaterial will not be gaining new features in any near feature ans this update os to jeep up with newest jetty version.
You can always jeep a copy if the lib that is based on jetty 3.0 in a différent folder, other than aditional libs.
 

alwaysbusy

Expert
Licensed User
Longtime User
@Jmu5667 supporting jServer 3.0 may be as trivial as changing one line in the xml file:

B4X:
<dependsOn>jServer3</dependsOn> ' <-- if you have renamed the old jServer.jar to jServer3.jar

ABMaterial itself will not be compiled with Java 11 but still with Java 8. Same goes for BANano.

Alwaysbusy
 
Top