Skip to content
PluginStats

aem-dialog-generator-plugin weekly downloads statistics

By ramirezcgn · npm · Webpack plugins

Webpack plugin that automatically generates AEM component dialog XML, design dialogs, and policies from JSON configurations

View on npm Fresh · Oct 18, 2026

aem-dialog-generator-plugin has 11 recorded weekly downloads on npm, a decrease of 82.8% over the past 30 days, ranking #2039 of 2,322 tracked listings.

Weekly downloads
11
Official API · Oct 18, 2026
7-day growth
-38.9%
-7 weekly downloads
30-day growth
-82.8%
-53 weekly downloads
90-day growth
-26.7%
-4 weekly downloads
Rank
#2039
Among tracked npm listings

About aem-dialog-generator-plugin

AEM Dialog Generator Plugin

A Webpack plugin that automatically generates AEM component _cq_dialog.xml and _cq_design_dialog.xml files with associated policies from simple JSON configurations. Features intelligent automation including automatic style tab generation, policy-to-template mapping, and dynamic indentation for production-ready AEM components.

npm version License: MIT Test Coverage

Features

  • 30+ Field Types - textfield, textarea, select, pathfield, pagefield, checkbox, alert, multifield, RTE, fieldset, container, heading, text, tags, image, autocomplete, radiogroup, contentfragmentpicker, experiencefragmentpicker, assetpicker, hidden, button, well, include, styletab, and more
  • Custom Resource Types - Override sling:resourceType on any field via resourceType for unsupported or project-specific components
  • Extended Datasource - datasource accepts a string, an object with extra attributes (e.g. rootPath), or a shorthand type ("tags") for built-in AEM datasources; fieldset and container also support datasource as the sole content source without requiring static fields
  • Flexible Layouts - Tabs, simple layouts, accordion, or fieldsets for organization
  • Auto-generation - XML files generated on every webpack build
  • Simple JSON - Easy-to-read configuration instead of verbose XML
  • Multifield Support - Both simple and composite multifields with delete confirmation and drag & drop reordering
  • Rich Text Editor - Full RTE configuration with customizable features
  • Folder Structure - Supports both _cq_dialog/.content.xml and _cq_dialog.xml formats
  • Show/Hide - Dynamic field visibility based on dropdown or checkbox values
  • Image Upload - Built-in support for DAM integration and file uploads
  • Page Selection - Native AEM page picker with content tree navigation
  • Content Fragments - Full support for Content Fragment and Experience Fragment pickers
  • Validation - Regex patterns, plain string validator keys, min/max values, required fields, maxLength
  • Contextual Help - Inline help tooltips and documentation links
  • Custom Styling - CSS classes, field width control, and Coral UI spacing
  • Field Enhancements - Default values, descriptions, placeholder/emptyText, autoFocus, wrapperClass
  • Enterprise Features - Custom IDs (granite:id), analytics tracking (trackingFeature, trackingElement), render hidden, collapsible sections
  • Advanced Pickers - Filter support, freshness control for DAM assets
  • typeHint - Force JCR data type on save (String, Boolean, Long, etc.)
  • Design Dialogs - Generate design dialogs (_cq_design_dialog) for component policies
  • Policy Generation - Automatically create component policies with RTE config, styles, and more
  • Style System - Define style groups and variants for the AEM Style System
  • Component Mapping - Configure asset-to-component drag & drop mappings
  • Auto Style Tab - Automatic cq:styles tab generation when styleGroups are present
  • Template Integration - Automatic policy-to-template mapping for seamless deployment
  • Include / Styletab - Embed any Granite UI include node, with a styletab shorthand for the AEM Style System edit tab
  • Dialog Root Attributes - extraClientlibs, helpPath, and trackingFeature on the jcr:root node of both dialog and design dialog
  • Render Conditions - renderCondition supports simple, privilege, feature, and, or, legacy:simple, full resource type paths, and explicit resourceType overrides
  • graniteData child node - graniteData prop generates a <granite:data> child node with arbitrary attributes (distinct from data, which generates inline granite:data-* attributes)
  • Select Enhancements - selectType: 'editable' creates a combobox-style input; options support selected and hide (→ granite:hide) attributes

Installation

npm install aem-dialog-generator-plugin --save-dev

Quick Start

1. Configure webpack
const AemDialogGeneratorPlugin = require('aem-dialog-generator-plugin');
const path = require('path');

module.exports = {
  plugins: [
    new AemDialogGeneratorPlugin({
      sourceDir: path.resolve(__dirname, 'src/main/webpack/components'),
      targetDir: path.resolve(__dirname, '../ui.apps/src/main/content/jcr_root/apps/mysite/components'),
      appName: 'mysite',
      generatePolicies: true,
      policiesTargetDir: path.resolve(__dirname, '../ui.content/src/main/content/jcr_root/conf/mysite/settings/wcm/policies'),
      templatePoliciesDir: path.resolve(__dirname, '../ui.content/src/main/content/jcr_root/conf/mysite/settings/wcm/templates'),
      autoMapPoliciesToTemplates: true
    })
  ]
};
2. Create a dialog.json file

Create src/main/webpack/components/button/dialog.json:

{
  "title": "Button Component",
  "tabs": [
    {
      "title": "Properties",
      "fields": [
        {
          "type": "textfield",
          "name": "./text",
          "label": "Button Text",
          "required": true
        },
        {
          "type": "pathfield",
          "name": "./link",
          "label": "Link",
          "rootPath": "/content"
        },
        {
          "type": "select",
          "name": "./style",
          "label": "Button Style",
          "options": [
            {
              "value": "primary",
              "text": "Primary"
            },
            {
              "value": "secondary",
              "text": "Secondary"
            }
          ]
        }
      ]
    }
  ]
}
```…

Description from the npm listing.

  • aem
  • adobe-experience-manager
  • webpack
  • webpack-plugin
  • dialog
  • design-dialog
  • policy
  • style-system
  • rte
  • granite-ui
  • touch-ui
  • component-dialog
  • xml-generator

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

aem-dialog-generator-plugin weekly downloads on npm, last 90 days: 11 weekly downloads as of Oct 18, 2026, -26.7% over 90 days.aem-dialog-generator-pluginWeekly downloads on npm · Last 90 days11downloads / week-26.7% over 90 days050100150200250Jul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 18, 2026 · 89 observations · Updated Oc…pluginstats.com
aem-dialog-generator-plugin weekly downloads on npm, last 90 days: 11 weekly downloads as of Oct 18, 2026, -26.7% over 90 days.

7/30/90-day growth

aem-dialog-generator-plugin weekly downloads growth on npm: -38.9% over 7 days, -82.8% over 30 days, -26.7% over 90 days.aem-dialog-generator-pluginWeekly downloads growth on npm11downloads / week now7-day growth-7 weekly downloads-38.9%30-day growth-53 weekly downloads-82.8%90-day growth-4 weekly downloads-26.7%Growth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
aem-dialog-generator-plugin weekly downloads growth on npm: -38.9% over 7 days, -82.8% over 30 days, -26.7% over 90 days.

Ranking history

aem-dialog-generator-plugin npm ranking history: currently #2039 (by weekly downloads).aem-dialog-generator-pluginnpm ranking · by weekly downloads · Last 90 days#2039current rank#1900#1920#1940#1960#1980#2000#2020#2040#2060Jul 22Aug 6Aug 21Sep 5Sep 20Oct 5Oct 20rankOct 18, 2026 – Oct 20, 2026 · 3 observations · Updated Oct 18, 2026pluginstats.com
aem-dialog-generator-plugin npm ranking history: currently #2039 (by weekly downloads).

Listing placement

All npm2,320 listings · 116 pages · 1,161 shown · page 103, #3 (overall #2,043)
All npm: every listing in weekly downloads order

Listing placement

Webpack plugins251 listings · 13 pages · page 11, #13 (overall #213)
Webpack plugins: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (122)
Recent weekly downloads observations for aem-dialog-generator-plugin
Date (UTC)Weekly downloadsChange vs. previous
110
11-3
14+6
8-1
9-7
160
16-2
18-5
23-1
24-6
30-31
61+5
56-3
59—

Similar npm Webpack plugins plugins

All 20 aem-dialog-generator-plugin alternatives

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/aem-dialog-generator-plugin. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.