Given the recent release of icCube’s v8 rc1, find here a summary of new concepts, functionalities and resources available with this version made for developers.
Plugins / Theme / Widget Gallery
The new v8 allows for applying your branding in a more efficient way. You can now create your theme and custom widgets, package them as plugins and load them at runtime.
Customers can extend icCube dashboards with their own plugins. A plugin consists of custom themes, widgets, tidy table transformations, localizations, etc… Plugins are exposed to icCube as Webpack Modules that can be federated. Then, icCube can be configured to load them at runtime.
The collection of widgets used by the icCube. Those are all the widgets available when using the “New Widget” menu: out-of-the box widgets plus any custom widget, meaning that you can create your very own Widget library of unique and branded custom widgets.
The new v8 is a fully new Dashboard application and comes with the new components below.
The result of queries in the dashboards’ widgets are now in the format of tidy tables (well-known in the data science world). A tidy table is created from a dataset received from a data source (e.g., MDX, SQL, …), possibly transformed and then fed as input of a widget (i.e., chart, table, filter, etc) for its actual rendering. This format makes it easier to add transformations to the query result (see below.)
Table Definition Source
Similar to In-Memory data sources in the server, you can add a csv data in the report as a source (handy for demos, testing…).
Transformations allow for manipulating the content of a tidy table before it is fed as input of a widget. Typical examples of transformations are: add/rename a column, add aggregations on rows/columns, percentage of total, colors, regression line, etc.
Mix measures from different cubes in a same query
You can now use measures from different cubes in a same query.
The text editors (used for tooltips, text boxes, etc) is now using markdown language which is a simple syntax language and can also contain HTML. The values, formattings, and basic calculations to display are also easily accessible with completion. This text is writen in the markdown language ( https://www.markdownguide.org/ )
You are now able to export a file that contains all terms defined in a dashboard (titles, texts, etc) for easy translation. No longer need to add codes, all text entries marked as ‘translatable’ might be automatically translated if needed.
Documentation for charts, filters, maps, transformations and other Dashboard functionalities, as well as API documentation that includes how to develop new themes, widgets (charts, maps, etc…), data transformations, etc, and embedding icCube Dashboards into a Web application.
See working examples of charts, filters and data navigation. Click on the Edit Dashboard button on the top left menu to see how each widget was created.
Both public documentation and public source code are available in the GitHub repositories. Each repository contains a README.md file explaining how to get started with the project.
- ic3-demo-plugin-react : A working example of an icCube Dashboards plugin creating custom widgets using React/Material-UI/Typescript.
- ic3-demo-plugin-theme : A working example of an icCube Dashboards plugin creating a custom theme.
- ic3-reporting-api : The API for developing new themes, widgets (charts, maps, etc…), data transformations, etc… and for embedding icCube Dashboards into a Web application.
By Nathalie Leroy Tapia Heredia