BPM & Automation  - 5min

How Does Extensibility Improve Your Application Development?

How Does Extensibility Improve Your Application Development?
Bonitasoft
October 12, 2022

While Bonita provides a rich set of features already built into the tool to meet the needs of most business process automation projects, there are times when an unexpected need cannot be met by default features. This is exactly why Bonita is designed to be extensible.

Extensibility allows developers to extend the platform without having to modify the source code. This empowers developers to:

  • Utilize the data and functionality from pre-existing applications
  • Build on existing tools
  • Extend the BPM platform’s native capabilities
  • Integrate fully with the company’s other systems

There are various extension points within Bonita which you can customize to meet the needs of your project. We’ll look at those capabilities within UI Designer.
 

 

Bonita UI Designer: Custom widgets

 

In the Bonita UI Designer, a set of default widgets is provided so that you can create and customize the page or form. If the out-of-the-box widgets don’t meet your particular needs, you can develop your own custom widgets using HTML, AngularJS and Javascript. Your custom widgets can then be used in all your Bonita pages, forms and fragments.

  • Custom widgets in Bonita are composed of:
  • A description of the widget
  • Properties exposed by the widget
  • A template describing the widget HTML markup
  • Controller that describes the widget logic
  • Assets if the widget uses external JavaScript libraries, CSS definitions, or images
  • AngularJS modules declaration if the widget uses services or directives that are not built in to the AngularJS framework

The custom widget implementation is based on the AngularJS framework. When you open the custom widget editor to create a new custom widget, you’ll see a simple example that will illustrate the basic uses of these concepts.

 

Bonita UI Designer: Layout

 

In Bonita, a layout is a page used to define the main frame of an application. It defines menu positioning, a footer, and any common content that can be displayed on every page of the application. Each application can have its own layout, and a layout can be linked to an application using the application descriptor.

Bonita’s extensibility allows you to customize the existing BPM application layout using its UI Designer. To customize layouts in Bonita, you just need a basic knowledge of Javascript, AngularJS, Bootstrap and Bonita.

  • Having this customizable application layout capability allows you to:
  • Customize your theme with reactive design
  • Stay in the Bonita Studio or provide your own layout
  • Change your layout so it will appear on all your pages
  • Fully customize it

This extensibility feature allows you to share common content on all the pages of your application.

 

Bonita UI Designer: Pages

 

What if you want to use your own user interface with your customization and branding? You can add custom pages in Bonita Administrator Application to form a part of an application or to customize information provided in default application pages.

To implement this extensibility feature, you need to provide HTML, CSS and Javascript resources that respect some packaging constraints. You can create a page using the Bonita UI Designer, which automatically creates a well-formed page for your use.

The benefits of building customized pages in Bonita include:

  • Ease of use
  • Options to drag and drop or provide your own code (HTML, CSS, Javascript)
  • Access to more than 25 widgets
  • Infinite other possibilities to build your own pages

 

 

Bonita UI Designer: Translations

 

Oftentimes companies will find limitations when it comes to multi-language applications. In Bonita, custom application menus can also be translated. The Bonita UI Designer includes a mechanism to add translations across pages, layouts, and form elements so you can support multi-language applications.

There is versatility in the way you manage translations as well. You can translate all text strings displayed on a particular page, layout or form. You can also translate fragments and custom widget strings on pages, layouts or embedded forms.

Each page in Bonita has a localization asset that contains the keys and the translations for all strings and all languages that the page supports. The asset is a file called localization.json and by modifying it as needed for the strings and translations, you can translate pages in Bonita.

Bonitasoft understands what companies need to be successful and it’s why we’ve built our BPM-based business process automation platform with acceleration of business process application delivery in mind. We empower professional developers to develop highly customized, fully integrated business applications faster with full platform extensibility. 

3 ways to learn more:

 

 

 

 

 

 

You might also like