OpenData Vibe Assessment: Alexandr Achapouski

Build a web prototype (HTML/CSS/JS, no backend required — call the NYC Open Data Socrata API directly via fetch) that adds three capabilities the current OpenDataNYC portal lacks:

  1. Natural-language query bar. Let a user type something like "restaurants in Bronx with no inspection grade in the last year" and translate that into a SOQL filter against the appropriate dataset (e.g., DOHMH Restaurant Inspection Results), then render the results as a table + bar chart, the way the portal's own Visualize tab does today but without requiring the user to manually pick dimensions, operators, and columns.
  2. Cross-dataset map mashup. Take two or three datasets that share a geospatial or administrative-boundary key (e.g., 311 Service Requests, DOHMH Restaurant Inspections, Street Trees) and plot them as togglable layers on a single Leaflet/Mapbox map, filtered to one community board or neighborhood at a time, so a user can visually correlate things like restaurant complaints against nearby 311 sanitation requests — something you currently can't do without exporting and joining CSVs yourself.
  3. Freshness + reliability dashboard. Pull the metadata (rowsUpdatedAt, update frequency, row count) for a curated list of ~20 popular datasets via the Socrata metadata API and render a simple card grid that flags which ones are stale relative to their stated update cadence, since the walkthrough made clear that "when was this last updated" is the single most important thing to check before trusting a dataset, but there's currently no way to see that across datasets at a glance.

For each feature, use vanilla JS or a lightweight framework, keep styling minimal (a clean data-dashboard aesthetic, not decorative), and cite the specific Socrata dataset identifiers you're querying against so the code is runnable. Explain any assumptions you make about which columns to use for filtering or joining, since NYC Open Data columns aren't always self-explanatory even with the data dictionary.