VoteUnity is a Progressive Web App — there's nothing to download from the App Store. It runs in your phone's browser but installs to your home screen like a native app.
When you open the app, you land on the Dashboard. Sites are sorted by GPS distance, closest first. The list re-sorts as you drive.
Two rows of chips at the top of the dashboard:
✓ Visited and 📌 My Assignments are special — when you tap them, you'll see every matching site across the whole campaign, regardless of how far away. Tap All or Unvisited to come back to the nearby-200 proximity view.
Type in the search bar at the top to find a site by name or address. Tap the 🔒 lock icon to keep the same search active while you walk between cards.
Tap the gold + button at the bottom right. Required: site name and street address. Three helper buttons make filling the rest easy — use whichever fits how you're standing right now:
You don't need to use any of them — if you leave latitude/longitude blank and just type an address, the app will geocode it automatically when you save. The buttons just let you preview the result first.
The wizard is three quick steps. Don't overthink it — your honest gut read is the data we need.
Pick the site disposition (overall tone of the crew):
Pick the vote intent — your read on whether this crew will vote Yes for Unity Club:
Add any issues raised — wages, safety, leadership, contract gripes, the rumor about the other slate — anything specific worth tracking.
Add specific people you spoke with — the loudest yes, the loudest no, anyone who matters by name. For each contact you can override the disposition or vote intent if they're different from the overall crew read. Phone is optional.
Skip this step entirely if no one stood out by name. The site-level read is the important data.
Double-check your read, add any internal notes (visible only to canvassers, not the crew), and tap ✓ Submit Visit.
You can visit the same site as many times as you want — every visit is logged separately. Useful when a crew that was hostile last week is friendly today, or when a new contractor's crew shows up.
To re-visit: tap a site card with a ✓ Visited badge from the dashboard, OR tap the matching entry in the Activity feed. Either way you land on the site detail page — tap Check In and run through the wizard again. The site's current disposition will update to your latest read, and the visit history will keep both reads on the site detail page.
Admins can assign specific sites to specific canvassers — your turf. Sites assigned to you show a 📌 Assigned to you badge on the dashboard. Tap the 📌 My Assignments filter chip to see only your turf.
If you have admin access, you can also assign yourself or others by tapping the 📌 icon in the dashboard header, selecting sites, then choosing canvassers from the picker. Or, on a site detail screen, tap + Assign Canvassers.
The middle tab shows recent canvasses across the whole team. Useful for:
The dashboard refreshes in the background so you see new visits from teammates. Default interval is 30 seconds. Slower intervals save battery.
Choose Apple Maps or Google Maps for directions. Apple Maps is the iOS default; Google Maps generally has better traffic data.
Settings → 🔒 Change Password. Minimum 8 characters.
Just canvass it again. Your latest visit overwrites the dashboard read. The full history is preserved in the visit log on the site detail screen.
From within the wizard, tap the ✕ on a saved contact row to remove it and re-add. After the visit is submitted, contact records are admin-edit-only.
iOS sometimes pauses GPS in the background. Open the dashboard, leave it open for a few seconds, and the watcher will restart automatically. If it doesn't, force-close and reopen the app.
Pull down on the dashboard to manually refresh. If that doesn't help, sign out and back in. As a last resort, delete the home-screen icon and re-add it.
The error message now includes the specific reason (e.g. HTTP 401: Unauthorized or HTTP 500). Note the exact wording and share it with your coordinator — that tells them exactly what to look at. Most often this means your session expired; sign out and back in usually fixes it.
If you see a number you don't expect (say, "✓ Visited (4)" when you know the team has done 22), your installed app is running a stale cached version. The fastest fix on iOS: delete and re-add the home-screen icon. On Android: long-press the icon → Uninstall, then re-install from Chrome.
Ask an admin to reset your password — see "Need help" below.
VoteUnity uses a tiny amount of data — text and small JSON only, no photos or video. Background sync at 30s intervals uses about 1 MB per hour of active canvassing.
Reach out through your campaign coordinator. They have the admin login and can reset your password, change your assignments, or help with whatever's blocking you.
For app bugs or feature requests, give the coordinator a heads up and they'll forward it.