Spring Boot
Now I have a web application with some text output.
It’s time to find The Front-end Framework!
The framework must be open, modern, well documented and constantly developing with large community around.
Front end options
1. AUI (Atlassian User Interface)
Just because I’m copying Jira, I can copy it’s front-end as well. Atlassian provide their own framework free of charge.
Home page: https://docs.atlassian.com/aui/
2. OpenUI5
Try to use an Enterprise front-end, promoted by SAP.
Home page: http://openui5.org/
3. Bootstrap
Well known everywhere, simple, feature rich.
Home page: https://getbootstrap.com/
4. AngularJS + Material
Well known, feature rich. Promoted by Google.
Easily confused with ‘Angular‘.
Home page: https://angularjs.org/
Use in combination with AngularJS Material
Home page: https://material.angularjs.org/latest/
Comparison: AUI vs OpenUI5 vs Bootstrap vs AngularJS
AUI | OpenUI5 | Bootstrap | AngularJS | |
---|---|---|---|---|
Current version (documentation link) | 7.3.3 | 1.50 | 4.0 | 1.6.7 + Material 1.1.5 |
“Get started” page | How to deploy | Hello World! 1 html file ~40 lines of code |
Hello, world! 1 html file ~20 lines of code |
Nothing there yet! 1 html file ~12 lines of code With Material |
CSS and JS loading from CDN (Contend Delivery Network), no need to have local copy of framework | yes from atlassian.com |
yes from hana.ondemand.com |
yes from bootstrapcdn.com and dependecies |
yes from google |
Responsive layout for mobile/smart phones | no | yes | yes | yes |
Icons | ~220 | 648 | none Multiple third party add-ons for icons 899 free icons in Font Awesome 5 |
over 900 |
Rich file uploading component (with “drag and drop”, multiple uploads, etc.) | simple html input | rich component | extended html input Third party add-ons Bootstrap file input – full featured component |
simple html input Third party add-ons |
Static HTML | yes | no | yes | yes |
Add-ons, extensions | may be, but not tested for compatibility | no, proprietary layouts and components | yes, large community and multiple samples | yes, large community and multiple samples |
Conclusion
AUI is actually weakest from all reviewed frameworks. Killer criterion: It doesn’t support responsive layouts for mobile use. Other features seem to be very poor in comparison as well.
OpenUI5 is very feature rich. However it is completely based on javascript. Static html is not supported. Even “Hello World” example uses javascript to generate page content.
My current choice is Bootstrap. It is pretty simple. Based on static HTML. Supports responsible layouts. Is compatible with thousands of third party extensions, add-ons and frameworks.
To check next: AngularJS. It seems to be more complex as Bootstrap, but more powerful.