A live operational + marketing intelligence map for the JRCO field and sales teams.
portfolio-map.html — full operational view with jobs, crews, service, customers, GC data, and hail.?mode=marketing — streamlined view focused on Property Portfolio, Hail, and Growth Markets layers.The map starts at the JRCO service area. Layers are grouped in the left sidebar. Enable any layer to load its data; disable it to remove it from the map. Data is cached locally where possible — look for the cache-age indicator next to the Property Portfolio count.
Grouped by sidebar section. All layers are lazy-loaded on first enable.
| Layer | Description |
|---|---|
| Projects | Active commercial jobs with health color coding (blue/green/amber/red). Default filter shows Red + Yellow only. Click a pin to open the project detail popup. |
| Residential Jobs | Active residential jobs. Purple pin with house icon. |
| Live Crew Positions | Real-time BT manpower crew positions pulled from the API. Refreshes on enable; use the header ⟳ Force Sync to force a refresh. |
| Assignment Routes | Crew-to-job assignment lines for active routes. |
| Assets | Equipment and vehicle assets on map. |
| Medical Facilities | Nearby hospitals, clinics, and urgent care facilities. Loads within visible map bounds. |
| Layer | Description |
|---|---|
| Customers | Active commercial customers. Filter by Sales Rep when enabled. |
| By Vertical | Customer pins colored by industry vertical (sub-layer of Customers). |
| Local GCs | General contractor offices in the visible map area. Use Search GC button to SERP-discover more. |
| Bid Queue | Active A & B rated bids. Sub-layer shows bids colored by vertical. |
| CE Properties | CenterEdge project properties with geocoded addresses. |
| Weather | Weather radar and LSR (Local Storm Reports) hub. Enables sub-layers including hail and tornado LSR markers. |
| Researched Properties | Canvas property research snapshots. Sub-layer GC Data overlays contractor intelligence. |
| Layer | Description |
|---|---|
| Properties | All service properties with geocoded locations. |
| Customer Bubbles | Aggregated service customer clusters by location. |
| Dormant Customers | Customers with no activity beyond the dormancy threshold. Sorted by lifetime value. |
| Layer | Description |
|---|---|
| Properties | Full JRCO property portfolio — customers (blue) and leads (amber). Switches automatically between pin and heat-map view based on zoom. Filter by type and sq footage. Click a pin to see full property detail and owner info. |
| Layer | Description |
|---|---|
| Hail Reports | All ingested hail alert events. Color-coded by damage severity. Click any marker for size, date, travel tier, and pipeline status. Found inside the Weather Hub sidebar group. |
| Last 2 Days Only | Sub-filter showing only hail alerts from the past 48 hours. |
All filters are in the sidebar and apply instantly across all visible layers.
Two entry points — both produce a Storm Plan and a Geo Hail Review report.
The full JRCO customer and lead database on the map.
Available in the sidebar — used for lasso selections, building scans, and storm grid planning.
| Tool | What it does |
|---|---|
| Lasso | Draw a closed polygon. Used as the boundary for Check Hail storm scans, building scans, and customer density snapshots. |
| Building Scan | Requires zoom 18+ and a tight lasso fence. Sends a satellite tile to Vision AI to detect rooftops within the boundary. Best for blocks with visible address numbers. |
| Storm Grid | The Plan & Scan panel divides the lasso or map-bounds area into a grid and runs a hail-property cross-check for each cell. |
Deep-link to specific views, locations, or layer states.
| Parameter | Example | Effect |
|---|---|---|
| ?mode=marketing | portfolio-map.html?mode=marketing | Activates Marketing Map mode — hides ops noise, auto-enables Property Portfolio and Hail layers. |
| ?lat=&lng=&zoom= | ?lat=38.9&lng=-94.6&zoom=10 | Opens map centered at the specified coordinates and zoom level. |
| ?job= | ?job=KC-2024-001 | Focuses the map on a specific job code and opens its popup. |
| ?customer= | ?customer=ACME-Corp | Opens the customer portfolio panel for the specified customer. |
| ?layers= | ?layers=hail-reports | Pre-enables one or more layers by name. Comma-separated. Valid names: hail-reports, prop-portfolio, service, customers. |
| ?view=growth | ?mode=marketing&view=growth | Opens directly in the Growth Markets view (requires marketing mode). |
?lat=&lng=&zoom=9&layers=hail-reports — the hail layer is automatically enabled when you open the map from a storm notification.Your Cloudflare Access identity is shown in the header banner.
The header displays your name and initials once the map resolves your identity from the resolve-user-context edge function. The badge pulls your Display Name from your app_user_profiles record. Hover the badge to see your full email address.
Cf-Access-Jwt-Assertion) or dev email fallback on localhost.app_roles control access to admin-only actions like Force Sync and Bulk CenterPoint push.app_user_profiles.display_name. Falls back to the email local part if not set.