Yeoman generator to help customize the ArcGIS Web AppBuilder
npm install generator-wabpackage.json, .jshintrc, etc) and scaffold out the files needed to create a new custom widget and custom theme.
bash
$ npm install -g yo
`
To install generator-esri-appbuilder-js from npm, run:
`bash
$ npm install -g generator-esri-appbuilder-js
`
$3
The generators should be run in the root folder of either the stem app or an app that you've already created with the Web AppBuilder.
#### App (Default) Generator
Currently the app generator doesn't do much other than install some project files (package.json, .jshintrc, etc) and ensure required subfolders (like widgets) exist. The subgenerators do most of the work.
1. Navigate into either stemapp or server/apps/[appId] under your local Web AppBuilder installation
2. Run the generator with yo esri-appbuilder-js
3. Answer the man's questions!
|Prompt|Description|Default|
|------|-----------|-------|
|Author|Name of developers or organization for widget manifests|Your Name or Organization|
#### Widget Generator
Scaffolds out the files needed to create a new custom widget.
1. Navigate into either stemapp or server/apps/[appId] under your local Web AppBuilder installation
2. Run the generator with yo esri-appbuilder-js:widget
3. Answer the man's questions!
|Prompt|Description|Default|
|------|-----------|-------|
|Widget Name|Folder name for output files and widget identifier|MyWidget|
|Widget Title|Name users see in widget selector and panel title bar|My Widget|
|Description|What does this widget do? (optional)|A custom Web AppBuilder widget|
|Base Class|The widget's base class|my-widget|
|Run inside a panel|Will your widget run inside a panel?|Yes|
|Locale (i18n) file|Will your widget require a locale file?|Yes|
|Style (CSS) file|Will your widget require a style file?|Yes|
|Config (JSON) file|Will your widget require a configuration file?|Yes|
|Template (HTML) file|Will your widget require a template file?|Yes|
Taking the default values for the prompts will generate the following output under the widgets folder:
`
MyWidget
│ config.json
│ manifest.json
│ Widget.html
│ Widget.js
│
├───css
│ style.css
│
├───images
│ icon.png
│
└───nls
strings.js
`
The next time you run the Web AppBuilder, you will see something like the following on the widgets panel:
!Widget in the Builder
$3
Scaffolds out the files needed to create a new custom theme based on the default Foldable Theme by Esri.
1. Navigate into either stemapp or server/apps/[appId] under your local Web AppBuilder installation
2. Run the generator with yo esri-appbuilder-js:theme`