Technical details

TreeDb's graphical user interface is based around the Vaadin web-based framework for developing rich internet applications. 

TreeDB works as a persistence framework to support Hibernate  as well as the following JPA implementation tools EclipseLink , HibernateJPA, OpenJPA and ObjectDB.

Both Hibernate1 as well as the JPA implementation tools: EclipseLink2, HibernateJPA and OpenJPA3  support a long list of databases  (1, 2, 3), including  MySQL, MariaDB, Postgres, H2, Derby, HSQLDB, SQLITE, DB2, Oracle and MSSQL, which were tested for compatibility. For further information see the compatibility matrix.

TreeDB  supports the comprehensive archiving of data. Any changes to the data will be archived. This not only makes it possible to revert individual changes, it also makes the historic development of the entire tree structure accessible. 

TreeDB utilises a unique virtual block-orientated data system, which enables large amounts of data, like multi-media data, to be saved in the database. 

TreeDB supports the export of unique domains or whole databases as a persistence framework or uses a format, which works independently from a database, namely TDEF (Tree DB Exchange Format).

Data transference over differing databases and persistence frameworks is made possible with the help of this format:


Output configuration: Hibernate/H2 → TDEF → Target configuration: JPA/MySQL

A module based system facilitates the integration of external Javascript libraries with the required Vaadin embedding codes. The following modules are currently available : ChemDoodleWeb, MathJax, jsPlot and Highlight.