MATIH Platform is in active MVP development. Documentation reflects current implementation status.
15. Workbench Architecture
dbt Editor

dbt Editor

The dbt Editor at frontend/data-workbench/src/components/DbtEditor/ provides an IDE-like experience for dbt model development with a model tree, SQL editor, and results panel.


Components

ComponentFilePurpose
DbtEditorDbtEditor.tsxMain IDE layout
DbtModelTreeDbtModelTree.tsxFile tree for dbt project
DbtResultsPanelDbtResultsPanel.tsxCompilation and run results

Types

// frontend/data-workbench/src/components/DbtEditor/types.ts
interface DbtModel {
  name: string;
  path: string;
  type: 'model' | 'source' | 'seed' | 'snapshot' | 'test' | 'macro';
  content: string;
  compiledSql?: string;
  lastRun?: DbtRunResult;
}

DbtEditor

IDE-style layout with:

  • Left panel: dbt project file tree (models, sources, seeds, snapshots)
  • Center: Monaco SQL editor with Jinja2 highlighting
  • Bottom: Compilation results, run output, test results
  • Toolbar: Compile, Run, Test, Generate docs
  • Integration with DbtApiClient for compilation and execution