Skip to content

Tag Filtering Type Separation#27

Merged
navyaa31 merged 25 commits intomainfrom
feat/tag-filter-types
Apr 14, 2026
Merged

Tag Filtering Type Separation#27
navyaa31 merged 25 commits intomainfrom
feat/tag-filter-types

Conversation

@YoChang410
Copy link
Copy Markdown
Contributor

@YoChang410 YoChang410 commented Mar 2, 2026

Changes

  • Changed Tags column on the table to Status, Event and Volunteer Type
  • Tag filter buttons show all tags of their type
  • Volunteer filtering now works with new Volunteer and Tag schema
  • Fixed misc. bugs with Tag fetching and Volunteer validation
  • Removed proxy route for tag backend

Testing

Tested with dummy data

How to test:
Run backend and frontend as normal. Use the team database, which has dummy data matching the new schemas.
Open http://localhost:3000/volunteers and apply any tags from the tab filter buttons.
Note: you may need to log out and log back in first. Then navigate to the volunteers page.

  • Behavior when multiple filters are applied at once: AND” relation across filter types, and  “OR” relation within filter types. For example, if selected: Events “Charity Run” and “Holiday Drive”, and Status “returning”, it will return all volunteers that have “returning” AND (either charity run OR holiday drive)
  • 'Clear All' button should remove all filters

Confirmation of Change

Screenshot 2026-04-02 at 3 34 04 PM Screenshot 2026-04-02 at 3 35 36 PM Screenshot 2026-04-02 at 3 34 31 PM Screenshot 2026-04-02 at 3 34 37 PM

@YoChang410 YoChang410 requested a review from navyaa31 as a code owner March 2, 2026 22:23
@YoChang410 YoChang410 marked this pull request as draft March 3, 2026 20:09
@YoChang410 YoChang410 marked this pull request as ready for review March 10, 2026 00:22
@navyaa31 navyaa31 assigned njbizzle and unassigned njbizzle Mar 10, 2026
@navyaa31 navyaa31 requested review from njbizzle and wmiq84 and removed request for CharlieSuarezRobles March 10, 2026 17:36
Copy link
Copy Markdown
Collaborator

@navyaa31 navyaa31 left a comment

Choose a reason for hiding this comment

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

I left a couple comments. One other thing is that "new" and "returning" are lower case rn but could you make them uppercase to match the other tags. Could you send screenshots to the designers and get their feedback as well?

<span>Tags</span>
<span>Status</span>
<span>
<img src="/sort-arrow.svg" alt="" className={styles.sortIcon} />
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.

can we remove the sort arrows

Comment thread frontend/src/app/api/tag/route.ts Outdated
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.

Could we have the frontend call the backend endpoints directly and remove this proxy route? you can refer to this PR where Michael removed proxies, and keep a look out for when its merged in

@navyaa31 navyaa31 requested review from CharlieSuarezRobles, navyaa31 and siwenshao and removed request for njbizzle and wmiq84 April 2, 2026 23:29
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 3, 2026

Visit the preview URL for this PR (updated for commit 38467e1):

https://home-start-80e0a--pr27-feat-tag-filter-type-rkzo3osk.web.app

(expires Tue, 21 Apr 2026 18:33:58 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: 2d310071333235bae3893f27fc89786faff3470f

Copy link
Copy Markdown
Collaborator

@navyaa31 navyaa31 left a comment

Choose a reason for hiding this comment

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

looks good! I just left comments about a couple minor changes

Comment thread frontend/src/app/layout.tsx Outdated
export const metadata: Metadata = {
title: "Home Start",
description: "Home Start dashboard",
title: "Create Next App",
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.

Can we change this back to "Home Start" and the description to "Home Start dashboard"

Comment thread frontend/src/components/SearchBar.tsx Outdated
{hasSearch && (
<div className={styles.inputField}>
<span className={styles.ic_search}>
<img src="/Union.svg" alt="Union logo" className={styles.union} />
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.

Can we use Image instead of img? I think if you just change it back to how we used Image before, it should be good

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.

Also can you move everything in app/components to /components. Currently there are two components folders so we are moving everything in app/components to /components

Copy link
Copy Markdown
Contributor

@CharlieSuarezRobles CharlieSuarezRobles left a comment

Choose a reason for hiding this comment

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

Everything looks good to me. The only problem is that I get an error when I click on the volunteers button in the dashboard.

Image

Comment thread frontend/src/app/volunteers/page.tsx Outdated
const [volunteerData, tagData] = await Promise.all([fetchVolunteers(), fetchTags()]);
setVolunteers(volunteerData);
setTags(tagData);
console.log("raw tag data", tagData);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I don't think we need this after we are done with debugging

Comment thread frontend/src/types/volunteer.ts Outdated
email: string;
phoneNumber: string;
tags: VolunteerTag[];
status: string;
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

maybe we can tighten status typing to "new" | "returning" instead of plain string

Copy link
Copy Markdown
Contributor

@siwenshao siwenshao left a comment

Choose a reason for hiding this comment

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

Navyaa covered most of the must-fix, I left a couple nit comments. Otherwise, the rest looks good to me!

Copy link
Copy Markdown
Contributor

@CharlieSuarezRobles CharlieSuarezRobles left a comment

Choose a reason for hiding this comment

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

Everything looks good to me and works fine on my side.

@navyaa31 navyaa31 requested review from navyaa31 and siwenshao April 14, 2026 07:29
Copy link
Copy Markdown
Collaborator

@navyaa31 navyaa31 left a comment

Choose a reason for hiding this comment

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

looks good, thank you

@navyaa31 navyaa31 merged commit 8b72dc0 into main Apr 14, 2026
3 checks passed
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.

5 participants