Instant Apps for engagement: collecting and managing public feedback – part 1
Public feedback is important when forming decisions, whether you’re planning infrastructure, managing parks or running community programs, enabling a user-friendly application for collection simplifies the process for the users and the data administrator. In part 1 of this 2-part series, we’ll explore how to set up the Reporter Instant App, highlight a few key settings and share some tips and tricks to keep your data collection easy and clean. Part 2 will cover using the Manager Instant app as the internal app for the data administrator. Refer to the diagram below for an overview of the workflow.
Why Instant Apps?
Instant Apps are ready to use applications, think of these as plug and play. You choose your map, make a couple of configuration tweaks and publish the app. They are not as configurable as Experience Builder, but they shine when you need a no code, fast deployable solution.
Step 1: prepare your web map
Before we can start configuring the reporter you’ll need the following:
- Editable feature layer – where feedback will be stored
- Related table – to hold user comments
- Two numeric fields – one for Likes and one for Dislikes
- Boundary polygon (uneditable) – submissions are limited to the area of interest
Below are the fields related to the editable feature layer that I used in this example, along with some screenshots and arcade calculations to help visualize the forms.
Example of fields used:
- Type of feedback – pre-filled per template (safety, infrastructure, etc.) (hidden field)
- Feedback – open text response from the user
- Follow up option – yes/no drop down
- Follow up email – only shown if “yes” is selected, allows user to enter email for contact
- Submitter contacted – auto filled with arcade (hidden)
- Project filter – auto filled with arcade (hidden)
- Feedback status – auto filled with arcade (hidden)
- Submitted on – auto filled with arcade (hidden)
Example of form design
Forms using templates
Arcade used in form for calculated expressions:
Submitter Contacted:
// Automatically populate the Submitter Contacted field on record creation
if ($editcontext.editType == "INSERT") {
return "No";
} else {
return $originalFeature. SubmitterContacted;
}
Project Filter:
// Automatically populate the Project Filter field on record creation
if ($editcontext.editType == "INSERT") {
return "Kalamalka Sewer Upgrade";
} else {
return $originalFeature.ProjectFilter;
}
Feedback Status:
// Automatically populate the Feedback Status field on record creation
if ($editcontext.editType == "INSERT") {
return "Not Approved";
} else {
return $originalFeature.FeedbackStatus;
}
Submitted On:
// Automatically populate todays date
Today()
Step 2: configure the Report App
Once the map, form and or templates are ready, you can begin configuring the Reporter. Below I’ve touched on a few key settings:
Map: Choose your web map with “Select a Map” and configure the map area to only focus on the extent of the area of interest. Enabling “Map area” will help keep users focused on submitting feedback within the region.
Map settings, Select the map for the Reporter
About: This is where you can provide information about the app that will be displayed to the users by altering the “app title” and enabling the “introduction window.”
About settings, enable and customize intro window
Reporter (panel options): Here is where you will enable the feedback layer as the editable layer and select the drown down to enable the “Reporting,” “Comments”, Likes” and “Dislikes” for the layer. As you enable these options, you will see the reporter update to your settings.
Reporter settings, enable reporting, comment, like and dislike
After configuring the layer, you will enable “Show Feature Symbology” and “Set report boundary” and select your boundary polygon (uneditable) to be the area of interest. This will limit users to only submitting feedback within the polygon.
Reporter setting, enable feature symbology and set the boundary polygon
Reporter (Panel text): Here you can adjust the text that the community will see when they submit feedback or comments upon existing feedback, like confirmation text after submitting or warnings when feedback falls outside the boundary.
Reporter Settings, customize the panel text to be more effective to your users
Interactivity: This section focuses on enabling tools to help your users explore and analyze the map. You can set the default zoom scale when records are selected, search settings, selection color and more.
Interactivity settings, customize the look and feel of the app
Theme & Layout: Apply your branding, logos, choose light or dark mode or custom CSS styling to ensure you maintain accessibility standards and text legibility. The “Position Manager” is responsible for the location of the Map Enable tools. If you’re not happy with the default layout, you can drag and drop tools to whichever order within the quadrant of the map.
Theme & Layout, apply any branding or color scheme to the app
Theme & Layout, determine where the map tools will appear
Language Switcher: Lastly, you can enable your application to be viewed in multiple languages. It is important to note, this will change the language of the app itself but not the submitted data. See more details on the tool here.
Language Switcher, leverage AI to translate the app for other languages
After the app has been configured to your liking, select the publish option in the bottom left of the configuration screen to apply your changes!
Wrapping up
With the reporter app we can:
- Collect spatially supported feedback from the public
- Allow users to see, react and comment on existing input
- Maintain structured data with forms, templates and simple Arcade formulas
In just a few minutes you can have a public facing feedback app that gives your community a voice but also helps you as the administrator make sense and support decisions from their input.
Overview of Report and Manager deployment
What’s next?
In part 2, we’ll dive into the Manager Instant App where you as the data administrator can review and approve feedback before it goes public, follow up directly with community members and manage and compare multiple projects within a single app.