RAD Architecture Series: Client-side Framework

In continuation of the RAD Architecture Series, we are going to focus on Client-side Framework in this post.

Good user interface and usability can have a strong positive impact on the adoption of the application by end users. At the same time, it takes good skills to build good user experience. It is not just science but an art that is mastered by a few.

Developing the UI for web applications has been very sluggish, unresponsive and difficult for many years.  However, in the recent past, with the advancement of client-side technology (JavaScript, browsers, standardization, frameworks), it is now possible to create sophisticated UI. However, it  is important that one selects the right combination to make all this work seamlessly and simplify the developer experience. Otherwise it still can get complex and messy for UI developers.

With WaveMaker Platform, the following aspects were evaluated before selecting the right framework:

  • Support for a Framework that encapsulates modern client side architecture while also providing ability for developers to easily customize client side behavior
  • Support for responsive user interface that can adapt well to modern devices
  • Support for Single Page Applications
  • Well-designed client-side MVC framework
  • Plug-and-play of jQuery and JavaScript libraries
  • Support for 2-way data binding between Model and View

And finally the most important one was selecting a framework that had support and backup of a large community of developers, users, and enterprise adoption.

With the above considerations, WaveMaker chose to adopt AngularJS client-side framework. AngularJS was created by Google and has a big following among client-side developers and is backed by a strong community. All applications including web and mobile developed using WaveMaker auto-generate AngularJS code for the client-side user interface.

With WaveMaker, all the client-side UI widgets are wrapped using AngularJS directives.

WaveMaker allows developers to drag and drop these widgets to create a sophisticated user interface. These widgets allow customization using properties and offer greater sophistication in terms of usability and support data binding with any backend sources.  You will learn more about them in the next blog post in this series.

Another advantage of WaveMaker is that developers can customize client-side behavior by writing custom JavaScript as well as importing 3rd-party jQuery or any other JavaScript framework. Head over to the Wavemaker  Rapid Application Development Platform page to learn more about the features and frameworks.

In the next blog post in this series, we will deep dive into the UI widget architecture. Stay tuned!