App Builder

Document created by Pedro Goncalves Employee on Aug 10, 2017Last modified by Diogo Belem on Nov 9, 2017
Version 8Show Document
  • View in full screen mode


App Builder is a plugin creator instrument that sits on two major cornerstones of the Pentaho ecosystem: CTools and PDI. Aiming to leverage as much as possible of our existing stack, anyone familiar with those tools will be able to build plugins.



License: MPLv2





Building plugins has been, so far, something only reachable by those who have development knowledge, leaving out of the picture lots of people with interesting ideas for new plugins, that could eventually help in a particular customer scenario.

These people usually lack the proper JAVA knowledge, but are commonly familiar with Pentaho implementations.

Being familiar with the CTools and Pentaho Data Integration, they will have all the required knowledge to create applications that will impress their customers.





Main Concepts

There are two sections when we edit a App Builder application: plugins metadata and elements definition.

The element group is basically composed by two types of elements: Dashboards, for the front-end side of the application, and Endpoints, for the back-end logic.





By filtering the Dashboard element types, we'll see how many screens our plugin has. The User Interfaces are generated through CDE, and we can jump from App Builder to CDE, if we want to edit our dashboard. Exactly like if we were creating a dashboard.



In the core of App Builder, we have pluggable support for several element types. The original idea was to support back-end logic in Javascript, JAVA and others, but Pentaho Data Integration worked so well out of the box, that we didn't yet feel the need for anything else.



You can access the App Builder Documentation, where we communicate what are the application's Dashboards and Endpoints, their goals, logic, actions and how all these are wrapped up to build a consistent plugin.



Get Started


01. Create a plugin with App Builder





02. Give it a name





03. Fill in the plugin info





04. Add an element





05. Add two dashboards





06. Edit the dashboards





07. Add a simple row





08. Preview it





09. Share it







If you're happy with the plugin, submit it to the Pentaho Marketplace and let everyone take advantage of it.



      Learn More:Fork on GithubPentaho Forums