Skip to content

673/mobile events screen#696

Open
jkhlin wants to merge 21 commits into
devfrom
673/mobile-events-screen
Open

673/mobile events screen#696
jkhlin wants to merge 21 commits into
devfrom
673/mobile-events-screen

Conversation

@jkhlin
Copy link
Copy Markdown
Member

@jkhlin jkhlin commented Apr 21, 2026

Summary

Mobile rewrite of the /events page that splits the single monolithic view into dedicated desktop and mobile experiences (list, calendar, and month picker). Also cleans up any types on the events page.

Changes

  • For days with multiple events the drawer is scrollable
  • Figma-aligned calendar with the current day highlighted and blue dots marking days that have events
  • Compact view shows scrollable, date-grouped list with sticky date headers
  • Added month picker component to jump to a month of the year for navigation
  • Current month of both calendar and list view pages can be scrollable hinted with angle brackets
  • List view shows all events for the month

Testing Instructions

Pull the branch and run pnpm install (the calendar view requires react-big-calendar). Go to events page on mobile and click through dates, location filters, scrollable month navigations, scrollable drawers on days with multiple events on both calendar and list views.

Closes #673

@jkhlin jkhlin linked an issue Apr 21, 2026 that may be closed by this pull request
@jkhlin jkhlin removed a link to an issue Apr 21, 2026
Copy link
Copy Markdown
Collaborator

@LexTruong LexTruong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey guys, this is fantastic work so far. See the comments I made on your code. In addition, please:

  • Fix the indicator on the mobile calendar view for the current day, as seen on the Figma
  • Each of your changed files are getting pretty long. Use separate components, such as for the drawers, when possible

<button
type="button"
key={`${event.title}-${String(event.start)}-${event.restaurantId || idx}`}
className="flex flex-row justify-between items-center py-2 px-3 text-left hover:bg-slate-50 dark:hover:bg-zinc-900/50 transition-colors border-b last:border-0 border-slate-100 dark:border-zinc-800 w-full"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line's too long.

<CloseIcon fontSize="small" />
</button>

{/* Scrollable Content */}
Copy link
Copy Markdown
Collaborator

@LexTruong LexTruong Apr 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This logic in lines 65-106 doesn't quite work. For example, if I open the drawer and then click a date in 2027, and then open the drawer again, I only have options from 2027 and 2028, with no way to get back to 2026. Instead, can we only display years and months for which we have data available?

};

return (
<div
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's too much padding on the sides in the mobile calendar view. Checkout the Figma for reference.

…eterPlate into 673/mobile-events-screen

# Conflicts:
#	apps/next/src/components/ui/month-picker-drawer.tsx
Copy link
Copy Markdown
Collaborator

@LexTruong LexTruong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Styling and padding look good. I like stacking the months in the list view. Couple more things:

  1. When in list view, pressing the month from the picker doesn't take you any where.
  2. In the calendar view, users shouldn't be able to go infinitely into the future with no event data. There should be similar code in the repo that finds the earliest and latest date for all the events, and then allow users to click between those months.

@EightBitByte EightBitByte self-assigned this May 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants