Die grafische Benutzeroberfläche der TreeDB basiert auf Vaadin, einem Webanwendungs-Framework für Rich Internet Application-Entwicklungen.

TreeDB unterstützt als Persistenz-Framework Hibernate und folgende JPA-Implementierungen: EclipseLink, OpenJPA, HibernateJPA und ObjectDB. Sowohl Hibernate1 als auch die JPA- Implementierungen EclipseLink2, OpenJPA3 und HibernateJPA unterstützen zahlreiche Datenbanken (1, 2, 3), von denen MySQL, MariaDB, Postgres, H2, Derby, HSQLDB, SQLITE, DB2, Oracle und MSSQL getestet wurden. Eine Auflistung der unterstützten Kombinationen aus Persistenz-Framework und Datenbanken finden Sie hier.

TreeDB unterstützt die vollständige Historisierung der Daten, jegliche Änderung wird protokolliert. Somit können einzelne Änderungen rückgängig gemacht und die historische Entwicklung ganzer Baumstrukturen verfolgt werden.

TreeDB implementiert ein eigenes virtuelles blockorientiertes Dateisystem, um große Datenmengen (z.B. Multimedia-Dateien) in der Datenbank speichern zu können.

TreeDB unterstützt den Export einzelner Domains oder der ganzen Datenbank in ein Persistenz-Framework- und datenbankunabhängiges Format namens TDEF (Tree DB Exchange Format). Mit diesem Format sind Migrationen über verschiedene Datenbanken und Persistenz-Frameworks möglich:

Beispiel:

Ausgangskonfiguration: Hibernate/H2 → TDEF → Zielkonfiguration: JPA/MySQL

Ein Modulsystem ermöglicht die Integration von externen JavaScript-Bibliotheken mit dem nötigen Vaadin-Einbettungs-Code. Es stehen aktuell die Module ChemDoodleWeb, MathJaxjsPlot und Highlight zur Verfügung.