MAD Designer iconMAD

MAD Designer-SymbolEin offenes Format und eine einbettbare Engine für relationales Reporting — hier ist jeder Bericht ein portabler Abfragegraph, eine materialisierte SQLite-Tabelle und ein parametrisches Layout.

MAD ist eine eingebettete Plattform für relationales Reporting für Ad-hoc-Abfragen, Berichte und Design: die Apps MAD Designer und MAD Viewer für iOS und natives macOS (AppKit), die headless Engine, die sie unter Linux und macOS ausführt, und das offene .mad-Dokumentformat. Eine .mad-Datei enthält die gesamte Definition eines Berichts — den Schema-Snapshot der Datenbank, den Abfragegraphen (Tabellen, Joins, Prädikate, Gruppierungen) und das bandbasierte Layout seiner Elemente — in weniger als 100 KB, sauber getrennt von der materialisierten SQLite-Tabelle (.maddb + .mdcache), die sie beim Aktualisieren erzeugt.

Der Code liegt auf github.com/mthomason/MAD, unter MIT-Lizenz; die Namen und das App-Artwork sind von dieser Lizenz nicht abgedeckt (siehe NOTICE).

MAD Designer auf macOS ausprobieren (macOS 12.0+, Apple Silicon):

In Aktion

MAD Designer für macOS — native AppKit-Desktopanwendung (NSDocument, visuelle Abfrageleinwand für Tabellen und Joins, interaktive Minimap der Bereiche und bandbasierter Berichtsdesigner sowie seitenweise Anzeige von PDF/HTML/CSV/JSON-Berichten):

Arbeitsbereich MAD Query in der nativen macOS-Anwendung

Arbeitsbereich MAD Designer in der nativen macOS-Anwendung

MAD Designer für iOS, von der Auswahl einer Datenquelle bis zum fertigen Bericht in MAD Viewer:

Dieselbe Engine headless unter Linux: inspect, schema, query, refresh und export über die mad-CLI, ohne Datenbankserver und ohne Zugangsdaten:

Die mad-CLI beim Inspizieren, Abfragen, Aktualisieren und Exportieren eines .mad-Dokuments

Der exportierte Bericht der Aufzeichnung ist reines HTML und lässt sich in jedem Browser öffnen.

Warum MAD

Das .mad-Format

Die offene Spezifikation, ein Kapitel pro Datei:

Was ein Dokument ist · Der Container · Der Speicher · Lesen und Schreiben · Begleitdateien · Fallstricke · Normativ v1 · Offene Fragen · Verifikation

Die Engine verwenden

Die Richtung

Vision — Berichte als kombinierbare Datenbanktabellen, Abfragen mit mehreren Quellen in einem einzigen Bericht, native UIKit-Datenansichten jenseits des Papierparadigmas und die Konvertierung von Legacy-Crystal-Reports-Dateien (.rpt) in offene .mad-Dateien.


Die App MAD Designer — der Berichtsdesigner, der auf dieser Engine aufbaut — hat ihre eigene Website unter mad.everydayapps.com.

Diese Seite ist eine deutsche Übersetzung des englischen Originals; bei Abweichungen ist der englische Originaltext maßgeblich.