matlab-build-app

Builds MATLAB desktop apps with uifigure, uigridlayout, and uihtml-based JavaScript interactivity.

883|109|Updated Apr 3, 2026
One-click install
npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-build-app
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: matlab-build-app
Source: https://github.com/matlab/matlab-agentic-toolkit/tree/main/skills-catalog/matlab-app-building/matlab-build-app
Command: npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-build-app

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill solves the problem of building rich MATLAB desktop applications without relying on binary .mlapp files, enabling repeatable, version-controlled GUI development.

Core Features & Use Cases

  • Programmatic App Construction: Build apps as class-based .m files using uifigure and uigridlayout for a maintainable, text-first workflow.
  • Interactive UI Controls: Create responsive interfaces with uibutton, uieditfield (numeric/text), uidropdown, uislider, uicheckbox, uitable, and more.
  • Web Integration via uihtml: Embed HTML/CSS/JavaScript components using uihtml and synchronize data with MATLAB through struct-based Data.

Use case example: Create a parameter-tuning dashboard with sliders and dropdowns that updates plots instantly and displays computed results in a table, while optionally rendering an HTML-based visualization panel.

Quick Start

Ask your AI to generate a MATLAB handle-class GUI app (using uifigure and uigridlayout) with a slider and a Run button that updates a plot, and include an optional uihtml panel for JavaScript-driven interactivity.

Frequently Asked Questions about matlab-build-app

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a MATLAB GUI programmatically without using App Designer or .mlapp files?

You can build a MATLAB GUI programmatically by creating class-based .m files using uifigure and uigridlayout. This approach replaces binary .mlapp files, enabling repeatable, version-controlled GUI development with interactive UI components and event-driven callbacks.

Can I embed HTML and JavaScript in a MATLAB dashboard app?

Yes, you can embed HTML, CSS, and JavaScript in a MATLAB dashboard app using the uihtml component. It synchronizes data with MATLAB through a struct-based Data property, enabling reliable rendering and interactive JavaScript-driven visualizations within the desktop application.

What is the best way to create a responsive layout for a MATLAB uifigure application?

The best way to create a responsive layout for a MATLAB uifigure application is using uigridlayout. It provides responsive grid sizing for interactive UI controls like uibutton, uieditfield, uislider, and uitable, ensuring the dashboard interface adapts cleanly to window resizing.

Does MATLAB support class-based app structures with event-driven callbacks for tool-like workflows?

Yes, MATLAB supports class-based app structures with event-driven callbacks for tool-like workflows. By using uifigure, you can generate handle-class applications that respond dynamically to user interactions with sliders, dropdowns, and tables, updating plots and computed results instantly.

How do I pass data between MATLAB and a uihtml component in a custom GUI?

To pass data between MATLAB and a uihtml component in a custom GUI, use a struct-based Data exchange. The uihtml component synchronizes this struct with the embedded JavaScript, ensuring reliable data rendering and interactive communication between the MATLAB workspace and the HTML panel.

Are binary .mlapp files required for version-controlling MATLAB GUI development?

No, binary .mlapp files are not required for version-controlling MATLAB GUI development. You can generate interactive MATLAB GUIs entirely in code as class-based .m files, avoiding binary formats entirely to enable clean, repeatable, text-first version control.