wasmocular.chdethloff.at
WasmOcular
Fallstudie

WasmOcular

WebAssemblyReactDuckDBRost

Ein browserbasiertes Tool zur Auswertung und Visualisierung von Git-Repository-Daten, das weder einen Server noch eine Installation erfordert. Entwickelt im Rahmen meiner Masterarbeit an der TU Wien.

Warum im Browser?

Unter „Repository-Mining-Tools“ versteht man normalerweise einen Server, eine Datenbank und eine Installationsanleitung. Ich wollte herausfinden, wie weit man mit einem einzigen Browser-Tab kommen kann. Mit WasmOcular können Forscher ein Git-Repository klonen, es analysieren und die Ergebnisse untersuchen, ohne etwas installieren zu müssen – das gesamte Tool besteht aus einer statischen Seite.

So funktioniert es

Der Browser klont das Repository mit wasm-git, verarbeitet den Verlauf mit dem auf WASM kompilierten Gitoxide, speichert alles in DuckDB-WASM und rendert darauf aufbauend interaktive Dashboards. Apache Arrow überträgt die Daten zwischen diesen Komponenten, ohne sie zu kopieren. Es gibt kein Backend; die gesamte Pipeline läuft clientseitig.

Technische Entscheidungen

  • wasm-git führt Git-Vorgänge im Browser aus, sodass serverseitig nichts geklont wird
  • DuckDB-WASM führt analytische SQL-Abfragen über den Verlauf des Repositorys aus
  • Apache Arrow überträgt Daten zwischen Komponenten ohne Kopieren („Zero-Copy“)
  • React rendert die Dashboards und Visualisierungen

Wo es gelandet ist

Der fertige Prototyp erschließt und visualisiert reale Repositorys vollständig auf der Client-Seite, und die ihm zugrunde liegende These belegt, dass WebAssembly mittlerweile ausgereift genug ist, um im Browser als ernstzunehmendes Entwicklerwerkzeug eingesetzt zu werden.