WAB distribution and deployment guidance

4707
2
Jump to solution
12-08-2014 09:06 AM
JonFairchild
New Contributor II

Esri friends,

We are an Esri partner that is beginning to invest in WAB, but lack clarity how the WAB widgets and apps we create will be distributed to our customers.  There have been a couple of posts including the following related to this topic:

How to export and download a WAB template for hosting in Portal?

How to Export created application?


It seems the two main deployment approaches are:

  1. Create apps in AGOL/Portal, in which case it seems we can export the apps (per http://doc.arcgis.com/en/web-appbuilder/manage-apps/export-as-template.htm), but cannot include our custom widgets nor redistribute the exported app to our customers' AGOL/Portal organization.
  2. Create apps and widgets in WAB of Developer, in which case we can include custom widgets and redistribute the apps or widgets by installing files on customers' web servers, but still cannot share the apps or widgets with our customers' AGOL/Portal organization.
I'm still seeking authoritative guidance from Esri on the deployment options in the WAB world.  Please tell us how we can meet our product distribution requirements:
  1. We can create custom apps and widgets specific to our business domain.
  2. Our apps and widgets can be deployed to our customers' web servers and configured for their web map and other config settings.
  3. Our apps and widgets can be shared with our customers via AGOL/Portal and configured for their web map and other config settings.

Thanks,

Jon

Julie Powell

1 Solution

Accepted Solutions
JuliePowell
Esri Contributor

There are multiple ways in which you can distribute your custom widgets.

1. (I recommend this approach) You can create a sample app using the Developer Edition, and then download it as a zip from the Developer Edition home page

Your customers can then upload it to their installation of the Developer Edition, and do further configuration on top of your sample app, save it, then deploy it to their production server. Note that for now, they will still have to copy your widgets into their widget folder (option 2) in order to make NEW apps based on your widget. This is not required if they are just configuring the sample app you provided. In the future, you will be able to add the widgets contained in an uploaded app to the general pool of Builder widgets without doing (option 2).

2. You can share the widget folder with your customer that has the Developer Edition installed. They will then drop them into their widgets folder within their Builder installation [install dir]\client\stemapp\widgets

3. You can share your widgets with the community in the public Github repo: Esri/arcgis-webappbuilder-widgets-themes · GitHub

4. You can export a template from the app you've created and share the template with your customers. Note that this process is creating an ArcGIS Online/Portal template, not a Web AppBuilder template.

5. You can create a ready-to-use app for your customers using WAB, host it on your own web server, or give it to your customers to deploy on their server. You can't host your app that contains custom widgets on ArcGIS Online, but you can reference your app in an item and share that item with your customer.

6. Marketplace providers can take the item described in (4) and create a listing in Marketplace. Customers can then purchase the item in Marletplace, and obtain a subscription to your hosted app.

7. You can create an app using the embedded version of WAB (in Online/Portal), and then upload it to the Developer Edition to add your custom widgets, etc. You can even modify the config file manually without the Developer Edition. However, I don't see much benefit with this approach since you can just install the Developer Edition at no extra cost and have a nice interface to use for configuration.

View solution in original post

0 Kudos
2 Replies
JuliePowell
Esri Contributor

There are multiple ways in which you can distribute your custom widgets.

1. (I recommend this approach) You can create a sample app using the Developer Edition, and then download it as a zip from the Developer Edition home page

Your customers can then upload it to their installation of the Developer Edition, and do further configuration on top of your sample app, save it, then deploy it to their production server. Note that for now, they will still have to copy your widgets into their widget folder (option 2) in order to make NEW apps based on your widget. This is not required if they are just configuring the sample app you provided. In the future, you will be able to add the widgets contained in an uploaded app to the general pool of Builder widgets without doing (option 2).

2. You can share the widget folder with your customer that has the Developer Edition installed. They will then drop them into their widgets folder within their Builder installation [install dir]\client\stemapp\widgets

3. You can share your widgets with the community in the public Github repo: Esri/arcgis-webappbuilder-widgets-themes · GitHub

4. You can export a template from the app you've created and share the template with your customers. Note that this process is creating an ArcGIS Online/Portal template, not a Web AppBuilder template.

5. You can create a ready-to-use app for your customers using WAB, host it on your own web server, or give it to your customers to deploy on their server. You can't host your app that contains custom widgets on ArcGIS Online, but you can reference your app in an item and share that item with your customer.

6. Marketplace providers can take the item described in (4) and create a listing in Marketplace. Customers can then purchase the item in Marletplace, and obtain a subscription to your hosted app.

7. You can create an app using the embedded version of WAB (in Online/Portal), and then upload it to the Developer Edition to add your custom widgets, etc. You can even modify the config file manually without the Developer Edition. However, I don't see much benefit with this approach since you can just install the Developer Edition at no extra cost and have a nice interface to use for configuration.

0 Kudos
JonFairchild
New Contributor II

Thanks for the great list! 

  • Approach 1.  We tested this approach and it appears to work well.  Likely this is how we will start.
  • Approach 4.  Also seems to work for the case where we want to host the app for our customers.  But I don't see a way to share the template with a customer other than to make the template public.  Am I missing something?
  • Approach 5:  In this approach if we host a ready-to-use app, reference the app in an item and share that item with a customer, am I safe in assuming our customer cannot configure the app nor apply it to their web map?
0 Kudos