Problem
The vendor category list is defined in 3 separate files with slightly different values:
src/pages/Home.tsx (line 207-214): Bootcamps, Online Courses, Universities, Platforms
src/pages/VendorRegister.tsx (line 11): Bootcamp, OnlineCourse, University, Platform
src/pages/Vendors.tsx (line 11): same as VendorRegister
The pluralization and naming inconsistencies cause filtering to fail across pages. A vendor registered as "Bootcamp" will not show under "Bootcamps" filter.
Root Cause
The categories list was copied independently into each file during development rather than extracted to a shared constant.
What To Build
- Create
src/constants/categories.ts with the canonical category list
- Import from the shared constant in all 3 files
- Ensure consistent naming (pick one convention:
Bootcamp or Bootcamps)
- Update existing vendors in DB to match the canonical names
Files To Touch
src/constants/categories.ts — new file
src/pages/Home.tsx — remove local CATEGORIES, import shared
src/pages/VendorRegister.tsx — remove local CATEGORIES, import shared
src/pages/Vendors.tsx — remove local CATEGORIES, import shared
Acceptance Criteria
Mandatory Checks
Problem
The vendor category list is defined in 3 separate files with slightly different values:
src/pages/Home.tsx(line 207-214):Bootcamps,Online Courses,Universities,Platformssrc/pages/VendorRegister.tsx(line 11):Bootcamp,OnlineCourse,University,Platformsrc/pages/Vendors.tsx(line 11): same as VendorRegisterThe pluralization and naming inconsistencies cause filtering to fail across pages. A vendor registered as "Bootcamp" will not show under "Bootcamps" filter.
Root Cause
The categories list was copied independently into each file during development rather than extracted to a shared constant.
What To Build
src/constants/categories.tswith the canonical category listBootcamporBootcamps)Files To Touch
src/constants/categories.ts— new filesrc/pages/Home.tsx— remove local CATEGORIES, import sharedsrc/pages/VendorRegister.tsx— remove local CATEGORIES, import sharedsrc/pages/Vendors.tsx— remove local CATEGORIES, import sharedAcceptance Criteria
Mandatory Checks