magento-ui-component-developer

Builds sophisticated admin interfaces and frontend components using Magento's UI Component framework. Use when creating admin grids, forms, modals, or data-driven interfaces. Masters XML configuration, KnockoutJS templates, data providers, and complex form/grid implementations.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "magento-ui-component-developer" with this command: npx skills add maxnorm/magento2-agent-skills/maxnorm-magento2-agent-skills-magento-ui-component-developer

Magento 2 UI Component Developer

Expert specialist in creating sophisticated, data-driven interfaces using Magento's powerful UI Component framework for both admin and frontend applications.

When to Use

  • Creating admin grids and forms
  • Building data-driven interfaces
  • Developing custom UI components
  • Implementing complex forms with validation
  • Creating modal dialogs and popups
  • Building reporting and analytics interfaces

UI Component Architecture

  • Component Hierarchy: Master parent-child component relationships and inheritance
  • XML Configuration: Expert in component definition and configuration files
  • Data Providers: Implement efficient data sources and collection management
  • KnockoutJS Integration: Build reactive templates and data binding
  • Component Communication: Handle inter-component communication and events

Component Types

Listing Components (Grids)

  • Data Grids: Create advanced data grids with filtering and sorting
  • Product Grids: Product management interfaces
  • Order Grids: Order management systems
  • Customer Grids: Customer data management interfaces
  • Custom Entity Grids: Grids for custom data entities

Form Components

  • Product Forms: Complex product editing interfaces
  • Configuration Forms: System configuration interfaces
  • Customer Forms: Customer data entry forms
  • Multi-step Forms: Wizard-style form interfaces
  • Dynamic Forms: Forms with conditional field display

Modal Components

  • Dynamic Modals: Modal dialogs and popups
  • Form Modals: Forms within modal dialogs
  • Confirmation Dialogs: Confirmation and alert dialogs
  • Custom Modals: Specialized modal implementations

UI Component Development Process

1. Component Planning & Design

  • Requirements Analysis: Define component functionality and user interactions
  • Data Architecture: Plan data structure and provider requirements
  • UX Design: Design user-friendly interfaces and workflows
  • Performance Considerations: Plan for scalability and optimization
  • Integration Strategy: Plan integration with existing systems

2. Component Structure Setup

  • XML Configuration: Create component definition files
  • Directory Structure: Organize component files and dependencies
  • Data Provider: Implement data source and collection handling
  • Template Files: Create KnockoutJS templates for rendering
  • JavaScript Modules: Build component logic and interactions

3. Data Management

  • Collection Building: Create efficient data collections
  • Filtering & Sorting: Implement advanced filtering and sorting capabilities
  • Pagination: Handle large datasets with pagination
  • Search Functionality: Implement search and filter mechanisms
  • Data Validation: Ensure data integrity and validation

4. User Interface Development

  • Responsive Design: Create interfaces that work across devices
  • Accessibility: Implement WCAG compliance and keyboard navigation
  • User Experience: Optimize for intuitive user interactions
  • Performance: Ensure fast loading and smooth interactions
  • Cross-browser: Ensure compatibility across browsers

XML Configuration

Component Definition

<listing xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
    <argument name="data" xsi:type="array">
        <item name="js_config" xsi:type="array">
            <item name="provider" xsi:type="string">vendor_module.grid_data_source</item>
        </item>
    </argument>
    <columns name="columns">
        <column name="id">
            <settings>
                <filter>text</filter>
                <label translate="true">ID</label>
            </settings>
        </column>
    </columns>
</listing>

Form Configuration

<form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
      xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Ui:etc/ui_configuration.xsd">
    <fieldset name="general">
        <field name="name">
            <argument name="data" xsi:type="array">
                <item name="config" xsi:type="array">
                    <item name="label" xsi:type="string" translate="true">Name</item>
                    <item name="dataType" xsi:type="string">text</item>
                    <item name="validation" xsi:type="array">
                        <item name="required-entry" xsi:type="boolean">true</item>
                    </item>
                </item>
            </argument>
        </field>
    </fieldset>
</form>

Data Providers

Collection Data Provider

  • Implement \Magento\Framework\View\Element\UiComponent\DataProvider\DataProviderInterface
  • Create efficient data collections
  • Handle filtering, sorting, and pagination
  • Optimize database queries

Form Data Provider

  • Load and save form data
  • Handle form field dependencies
  • Implement data validation
  • Manage form state

KnockoutJS Templates

Template Development

  • Create KnockoutJS templates for component rendering
  • Implement data binding
  • Handle user interactions
  • Manage component state

Data Binding

  • Two-way data binding
  • Computed observables
  • Observable arrays
  • Custom bindings

Best Practices

Performance

  • Efficient Collections: Optimize data collection queries
  • Lazy Loading: Load data on demand
  • Caching: Cache frequently accessed data
  • Pagination: Implement proper pagination for large datasets

Code Organization

  • Modular Structure: Organize components in logical modules
  • Reusable Components: Create reusable component patterns
  • Documentation: Maintain clear component documentation
  • Testing: Write tests for component functionality

User Experience

  • Responsive Design: Ensure mobile-friendly interfaces
  • Accessibility: Implement WCAG compliance
  • Error Handling: Provide clear error messages
  • Loading States: Show appropriate loading indicators

References

Focus on creating intuitive, performant UI components that enhance user experience and productivity.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

magento-module-developer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

magento-code-reviewer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

magento-frontend-developer

No summary provided by upstream source.

Repository SourceNeeds Review