CUBA platform and its Studio offer today what I think is the most complete JAVA based full stack to date. Moreover, it has achieved that while staying simple to use.
The platform is well thought and proposes a whole set of features that you nearly always need in an enterprise application :
- efficient web gui with generic features like paging, filters, and a lot of widgets available
- efficient security system with role management and its integrated gui
- jmx beans integration with its gui
- log and its gui, application configuration and its gui
- integrated versioning system with restore features and change tracking by user, and its gui
- localization
- dynamic and generic extension of entities attributes (e.g adapt to client specifity)
- scheduled tasks
- REST, responsive GUI (albeit less integrated) & portal
What is impressive is that all these features are ready out of the box, you can even imagine not write a single line of code to extend some of them (e.g security, scheduled tasks) as they fully cover so many real life cases on their own.
Add to that optional components like generic reports, full-text search, BPM and you
On the design side, the platfom is very clean : separation of concerns, based on injected components & services. And you can deploy easily in multiple ways on infrastructure going from simple all-in-one to multi-tiers, and even on the cloud. Plus the generated application is ready for replication between datacenters (for instance through the use of UUIDs).
On top of that, the Studio IDE wil save you tremendous amount of time, by implementing full round-trip between your favorite JAVA IDE, back and forth, and live-reload of your running application in most cases. And featuring automatic and incremental schema evolution as good as other specialized products do. The screen generation from data model is impressive, and you have a WYSIWYG editor to customize it.
The documentation and samples are quite complete, which is not that often for frameworks with so many features. There is a learning curve of course, but there always is.
The platform updates rapidly, which is for us an advantage, as we want it to mature even more quickly, albeit documentation and samples sometimes does not follow the same rythm. E.g no polymer example yet, but this is a fresh new feature, this is certainly on the way. Note that the team is very reactive, which is also of great importance.
All-in-all, after having studied different frameworks for months, we simply found that CUBA was the most advanced, and we now rely on it steadily. Simply put, this is a RAD framework by-the-book : you have out-of-the-box all features needed in an enterprise-class application, so you can concentrate on your business model.
This platform has a lot to offer.
It is easy to get started with and you have a solution in a few hours instead of days.
The platform allows you to modularize your solution.
I offers migration of data model from one system to CUBA.Platform.
Has very good documentation how the hole framwork. Includes examples.
Very active forum. Live chat with other fellowes working with CUBA.Platform.
CUBA.Platform offers REST out of the box, Portal Client, Polymer Client which makes it easier to build web pages that adapt the width of device and with full support of CUBA.Platform data. You can auto generate the skeleton from CUBA.Studio and design the rest as you like.
I love the user role and right management. Very easy to use and a lot of control.
Jmix is a high-productivity development platform for building modern business applications. It offers developers an efficient way to create enterprise-grade applications using a powerful set of tools and components that help accelerate the development process. Jmix features a strong focus on database-centric applications with a rich user interface and is built on a robust framework that supports scalable and maintainable code architecture.Additionally, Jmix provides integration with popular technologies and frameworks, making it a flexible choice for developers looking to leverage existing skills and tools. The platform supports rapid application development with features like visual design, hot deployment, and a high level of customization, allowing developers to focus more on business logic rather than routine coding.