Minimal features - #82
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Deployment failed with the following error: Learn More: https://vercel.com/docs/concepts/projects/project-configuration |
|
@huncijr is attempting to deploy a commit to the Hack Club Team on Vercel. A member of the Team first needs to authorize it. |
|
Will this be reviewed? |
|
@huncijr can you resolve the conflicts? The RSVP via web already is implemented.
imho, I don't see any reason to make the borders wider, but if it's not-intentional, it should be fixed. I do like the cancellation info banner tho! Cool feature. |
|
Hi, I fixed it! |
|
Alright, will look into it |
|
This does not build. |
|
I hope everything's okay now, the problem was that I didn't accidentally pull, and it caused the merge conflicts. |
|
@v1ctorio can you review this pr? |
|
Hey!. Sorry, I'm at work. Could you DM me via slack so I don't forget? I'll check it on the afternoon
…-------- Original Message --------
On Tuesday, 08/25/26 at 15:56 Abro ***@***.***> wrote:
huncijr left a comment [(hackclub/events#82)](#82 (comment))
***@***.***(https://github.com/v1ctorio) can you review this pr?
—
Reply to this email directly, [view it on GitHub](#82?email_source=notifications&email_token=ARYOBL5ZO7I4LWKUC4GUCT35LWLJXA5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTKNBRGE2DKMJTGM22M4TFMFZW63VHNVSW45DJN5XKKZLWMVXHJLDGN5XXIZLSL5RWY2LDNM#issuecomment-5411451335), or [unsubscribe](https://github.com/notifications/unsubscribe-auth/ARYOBL3TKT4SU4RGSSVJOG35LWLJXAVCNFSNUABFKJSXA33TNF2G64TZHMZDKNJRGM3DOMRVHNEXG43VMU5TINZQGA4DINZRGEY2C5QC).
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
|
I don't know your Slack name :( |
There was a problem hiding this comment.
Pull request overview
This PR updates the Events UI to surface more event metadata (cancelled state + interest/RSVP counts) and to broaden YouTube recording/livestream handling, along with a light-mode icon for the color switcher.
Changes:
- Display cancellation state in both the event list and event detail page (banner + badge) and suppress certain actions when cancelled.
- Add “interest count” display in the event list cards and event detail page, backed by new fields in the data mapping.
- Expand YouTube section rendering beyond AMA-only events and update the nav color-mode toggle icon for light mode.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| pages/[slug].js | Adds cancelled banner/badge + interest count display; adjusts calendar/actions and YouTube section rendering; adds notFound guard in getStaticProps. |
| lib/data.js | Extends event mapping with cancelled, rawCancellation, and interestCount. |
| components/nav.js | Adds Sun icon for light mode and mount-guarded rendering in the color mode toggle. |
| components/event.js | Adds cancelled styling/badge and interest count chip to event cards. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| interestCount: | ||
| typeof e['InterestCount'] === 'number' ? e['InterestCount'] : 0, | ||
| interestCount: e['InterestCount'] || 0, |
| {!past(event.start) && !event.cancelled && ( | ||
| <Flex sx={{ gap: 2, flexWrap: 'wrap', mb: [3, 4] }}> | ||
| <Button | ||
| as="a" | ||
| target="_blank" | ||
| href={event.cal} | ||
| sx={{ bg: 'cyan' }} | ||
| > | ||
| <Button as="a" target="_blank" href={event.cal} sx={{ bg: 'cyan' }}> |
| </Box> | ||
| </Container> | ||
| {event.ama && ( | ||
| {(event.youtube || event.ama) && ( |
| </Embed> | ||
| )} | ||
| <Embed> | ||
| <ReactPlayer url={event.youtube} /> |
| <Text variant="subtitle"> | ||
| This event will be livestreamed on Youtube | ||
| </Text> |
| <NavButton | ||
| {...props} | ||
| onClick={() => setMode(mode === 'dark' ? 'light' : 'dark')} | ||
| title="Reverse color scheme" | ||
| sx={{ | ||
| ...props.sx, | ||
| transition: 'transform 0.3s ease,box-shadow .125s ease-in-out' | ||
| }} | ||
| > | ||
| <Moon size={24} /> | ||
| {mounted && | ||
| (mode === 'dark' ? ( | ||
| <Sun size={24} style={{ transition: 'transform 0.3s ease' }} /> | ||
| ) : ( | ||
| <Moon size={24} style={{ transition: 'transform 0.3s ease' }} /> | ||
| ))} | ||
| </NavButton> |


Added 4 features : cancelled event badge, an interest count display showing how many people RSVP'd via Slack,(For the interest count to work with real RSVP data from the website, Isabelle needs a non-read-only REST endpoint I already fixed that on: hackclub/isabelle#25). Add a POST /api/rsvp route in app.py that calls the existing toggle_user_interest() from database.py, accepts { event_id, user_id } in the request body, and returns the updated interest count. The internal logic is already complete .It just needs to be exposed as a public endpoint so the Events website can POST RSVP actions directly instead of relying only on Slack reactions.) and expanded YouTube recording support beyond AMA-only events. The data.js mapping was extended to include cancelled, rawCancellation, and interestCount fields. And also added an icon for light mode :)


