Web AppBuilder Developer Edition

In progress

To create custom widgets and themes for ArcGIS Enterprise you will need to install Web AppBuilder (Developer Edition).

Tips

Getting started

  • When running Web AppBuilder, use your lower case machine name or FQDN instead of localhost or an IP address

  • Ensure CORS settings are clear in the target ArcGIS Enterprise, or that your machine name/FQDN above is white listed

    • Organization → Edit Settings → Security → Allow Origins

 

Editing Widgets

https://gis.stackexchange.com/questions/246253/refreshing-web-appbuilder-widget-during-development

 

Publishing

First, you cannot publish custom widgets back to the WAB built into Enterprise/Portal, as per this: https://community.esri.com/thread/121410

You can publish apps which use custom widgets and themes by following these steps:

There are also instructions included in your new custom app in the ./readme.html document.

Adding a custom widget to portal

Custom widgets can be added as content items to an ArcGIS Enterprise Portal. See the following:

https://enterprise.arcgis.com/en/portal/latest/use/add-custom-widgets.htm

Azure storage static sites

These applications can be hosted in Azure Storage Accounts using the static site feature.

  1. Update env.js to supply an apiUrl, as a local relative path is assumed

    1. apiUrl = "https://js.arcgis.com/3.29",

  2. Create a static site by following this documentation:

    1. https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website

  3. Use Microsoft Azure Storage Explorer to copy your app

    1. From …\WebAppBuilderForArcGIS\server\apps

    2. To $web

  4. Follow the remaining steps to

    1. Add the app as content and register the web app

      1. https://doc.arcgis.com/en/arcgis-online/manage-data/add-items.htm#ESRI_SECTION1_0D1B620254F745AE84F394289F8AF44B

Version Control

Determine how to integrate with version control

Continuous Integration

Since the AppID needs to be registered we can’t reuse the same app on multiple platforms. Once an app has been added and registered we can update the source to keep it up to date. Pipelines that write that blob storage should be easily configured.