https://producingtechnology.com/65-apps/panwenqing_183212_15200482_routeresolve.html
Data source (JSON): panwenqing_183212_14904100_wp273.json
Author / user ID: Wenqing (wp273)
RouteResolve bills itself as a "Safety-Aware Navigation System." The landing
view is a dashboard-style layout built around a user on or near the Cornell
Tech / Roosevelt Island / Midtown NYC area. The header shows the app name
with a "LIVE" indicator and a link out to the backing JSON endpoint
(wp273.json), which the app pulls its data from on load.
The page is divided into several panels:
Looking at the underlying JSON, the app is designed to read a user object (name, preferences), an array of locations with coordinates and risk levels, active alerts tied to specific locations, and a list of recommendations with a safety score from 0–1. So the intended behavior is: fetch the JSON → render current alerts, plot tracked locations on the map, surface the top recommended route, and respect the user's preferences.
Improve the RouteResolve safety-aware navigation app with the following changes:
- Fix the data binding so the app actually renders the fetched JSON. Replace every "—" and "LOADING…" placeholder with the corresponding field from the endpoint (alerts, locations, recommendations, preferences), and show a clear error state if the fetch fails.
- Replace the static Location Map placeholder with a real interactive map (Leaflet + OpenStreetMap tiles is fine). Plot each location from the JSON as a pin color-coded by
riskLevel(green = low, amber = medium, red = high), and draw the recommended route as a polyline between pins.- Make the Active Alerts panel prominent: sort alerts by
severity(high first), show the affected location names (not just IDs) using a lookup into the locations array, and color the alert card by severity. Include relative timestamps like "2 hours ago."- Render each Route Recommendation as a card showing the title, description, estimated time in minutes, and the safety score as a 0–100% progress bar. Add a "Start Route" button that highlights the route on the map.
- Turn User Preferences into real interactive controls: a toggle for notifications (wired to the browser Notification API), a light/dark theme switch that actually re-themes the page, and a budget selector (low / medium / high) that filters recommendations.
- Add a "Report a Hazard" button that lets the user submit a new alert (type, message, severity, location) and have it appear in the Active Alerts list immediately, persisted to
localStorageso it survives reloads.- Make the "LIVE" badge meaningful: poll the JSON endpoint every 60 seconds (or use a visible "Refresh" button), show a "last updated" timestamp, and briefly flash the badge when new data arrives.
- Add basic accessibility: real headings for each section, ARIA labels on the map and toggles, and sufficient color contrast on the severity colors so alerts are readable for colorblind users.