Repository navigation
feat(web): complete visual overhaul - #3
Merged
Merged
Conversation
TIGERMAP_API_PROXY points the Vite /api proxy at another backend (e.g. production feeds) and defaults to the local server on port 3001.
Adds the TigerMap favicon, theme color, description, and Bricolage Grotesque/Manrope fonts, and re-enables pinch zoom for accessibility.
polishMapStyle recolors fills, lines, and labels to the warm campus palette and hides noisy symbol layers while preserving sources, filters, and zoom visibility rules. Covered by a style-spec validation test.
- DetailPanel owns focus, resize animation, mobile sheet gestures, and the Directions footer for place, dining, free food, club, and directions views - Map markers and panels share a single Selection type; CampusMap renders all markers through PlaceMarker - New discovery panel, quick filters, and filter panel with select all and clear - Shared JSON fetch and list parsing helpers in utils/api - Browser checks for mobile sheet gestures and panel resizing
When Mapbox fails after the style loads, the mounted but transparent canvas covered the overlay and swallowed Retry clicks.
Short screens place the panel on the right, but the camera still reserved portrait sheet padding taller than the canvas, so fitBounds failed and left the route off-screen. Camera padding now follows each layout, with extra clearance above the portrait directions sheet.
Club events now show the club name in the header and the full subject in the scrollable content. Other panel titles clamp to three lines, or two on short screens, so content and actions stay visible.
- Switch to the bottom-sheet layout below 768px, since the tablet columns overlap until 752px and the panel covered search clear and filters - Use range media queries so fractional widths from browser zoom never fall between the phone and tablet layouts - Raise the search workspace while searching so results stay tappable above an open sheet
… warnings - Free food markers sit above their spot and stack over other markers, so posts at dining halls or places no longer hide under a same-sized hit box - A successful free food poll clears its earlier failure while one-time feed failures still show the warning
Ammaar-Alam
marked this pull request as ready for review
September 30, 2026 19:46
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Free food markers were always filled, which read the same as a selected marker. They now use the shared outlined style with a live dot, and fill only when selected.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
(replaced vibecoded ai slop with better ai slop)
Summary
A full redesign of the TigerMap web app, plus new ways to explore campus: layer toggles, popular places, meal tabs, draggable mobile sheets, and recovery when data fails to load. The map stays central, search opens a place before asking for location, and every view works across desktop, tablet, phone portrait, and phone landscape.
Before and after
Before
tigermap-before.mp4
After
tigermap-after.mp4
New features
Exploring the map
Search
⌘K/Ctrl+Kfocuses search from anywherePlaces, menus, and events
Phone
Reliability and accessibility
Behavior changes
Redesign
utils/mapStyle.ts); sources, filters, and zoom visibility rules are unchangedPlaceMarker); free food markers sit above their spot so posts at dining halls stay tappableDetailPanelfor places, menus, free food, club events, and directions, with animated resizing and a single Directions actionDevelopment
TIGERMAP_API_PROXYpoints the Vite/apiproxy at another backend, e.g.TIGERMAP_API_PROXY=https://map.tigerapps.org bun run --cwd apps/web devto preview with live feeds; it defaults to the local server on port 3001utils/api.ts)Testing
bun run lintandbun run buildbun test apps/web/tests/mapStyle.test.tsvalidates the restyled style against the Mapbox style spec and checks that data and label visibility rules are preservedapps/web/tests/mobileSheets.browser.jsandapps/web/tests/panelResize.browser.jscover sheet gestures and animated resizing in an open panelFollow-ups
(PR Automated by Codex)
Original user prompt: "Let's test the custom harness from my priv repo: use it to redesign tigermap, make it actually presentable instead of vibecoded slop"