How vishwajith-gs/data-kitchen works
Data Kitchen is a browser-only data-preparation studio: users load CSV or Parquet data, inspect its profile, configure a guided sequence of preparation steps, preview transformations, and export the result. React keeps wizard state on the main thread and sends database requests through a message-based client to a Web Worker running DuckDB-WASM. The worker owns ingestion, profiling, transformation execution, and export operations. The sampled code confirms key transformations; README features and unsampled UI modules are represented where the tree supports them, without asserting uncertain internal wiring.
Main entry points: WizardStudio.tsx Wizard studio · db-worker.ts Database worker · db-client.ts Database client · App.tsx Application shell
Components 14
Studio interface
- Application shell
data-prep-studio/src/App.tsx - Wizard studio
data-prep-studio/src/components/WizardStudio.tsx - Wizard steps
data-prep-studio/src/components/Wizard/WizardContainer.tsx
Preparation workflow
- Wizard state
data-prep-studio/src/context/WizardContext.tsx - Preparation steps
data-prep-studio/src/components/Wizard/Steps/AdditionalSteps.tsx - Recipe compiler
data-prep-studio/src/utils/pipelineEngine.ts
Worker engine
- Database client
data-prep-studio/src/lib/db-client.ts - Database worker
data-prep-studio/src/worker/db-worker.ts - In-browser DuckDB
data-prep-studio/src/worker/db-worker.ts - Dataset profiler
data-prep-studio/src/worker/profiler.ts - SQL compiler
data-prep-studio/src/worker/sql-compiler.ts
Preview and export
- Data preview
data-prep-studio/src/components/DataGrid.tsx - Export panel
data-prep-studio/src/components/ExportPanel.tsx
Other components
- Data user
Connections 17
- Data user → Application shell: starts session
- Application shell → Wizard studio: opens studio
- Wizard studio → Wizard steps: renders steps
- Wizard steps → Preparation steps: selects step
- Preparation steps → Wizard state: saves choices
- Wizard studio → Wizard state: reads history
- Wizard studio → Database client: requests operations
- Wizard studio → Recipe compiler: compiles history
- Recipe compiler → Wizard studio: returns recipe
- Database client → Database worker: posts requests
- Database worker → Database client: returns results
- Database worker → In-browser DuckDB: runs SQL
- Database worker → Dataset profiler: profiles data
- Database worker → SQL compiler: compiles recipe
- Wizard studio → Data preview: shows preview
- Data user → Wizard studio: selects file
- Export panel → Database client: requests export