Skip to content
carlosame edited this page Sep 2, 2022 · 2 revisions

Carte wiki

Carte is a small, simple Report-Template Engine based primarily on SVG charts, but can use other charts as well.

It is not a stand-alone application, but helps you to easily produce a reporting app in Java. Carte is like a glue that can combine almost any reporting solution, existing or new, but requires customization (see the JMH reporter as an example later).

It provides unique reports and that's why I use it, but it is not ready for widespread usage.

In Carte, you write a custom XML file which defines how to produce and store the charts. At this moment, the report engine is somewhat limited (bar charts only) because new chart types are only being added as needed. If you come up with your own charts, you are invited to contribute them.


Why Carte

The existing charting solutions did not give the flexibility and appearance that I was looking for, so I started the project. The initial implementation, which was deprecated more than a decade ago, was sort of an XHTML "chart-enabled template" that was annotated inside the XHTML itself by heavily using namespaces, but that was obsoleted by HTML5.

The current (very small) implementation assumes nothing about the documents being used, but provides a DocumentStore (which includes an HTMLTableStore) that are based on HTML (XHTML is no longer assumed nor required), and are generally what you want.

The SVG charts are stored inline in the DocumentStore document, although you can generate rasterized images with your favourite chart solution as well. It will also provide fallback images for the SVGs (generated with EchoSVG).


The Configuration

Carte reads all the configurations from an XML file. Please see the Configuration page for a description.


The JMH Reporter

The JMH reporting application is a good example of how to write an application that uses Carte.

Clone this wiki locally