Skip to content

Audit, verify, test all MUI dependencies and breaking changes after PR#2811 merged or during review #2644

Description

@SAUMILDHANKAR

This issue written with ChatGPT models' help

Overview

We want to audit all Material UI (MUI) packages and application-wide MUI usage so we can create a clear, documented migration plan for upgrading from MUI v5 to MUI v7 across the entire application.

Details

⚠️ Important workflow note:
This work should be done on a dedicated feature branch and must not be merged directly into develop or main until the MUI v7 migration epic is complete.

This issue supports the larger MUI v7 upgrade effort by identifying which MUI packages are currently used, where they are used, and which areas of the application are most likely to require refactoring during the migration. The goal is not to perform the upgrade itself, but to produce a practical migration reference that other folder-level MUI upgrade issues can use.

This audit should include:

  • Identifying all MUI-related packages currently used in the project
  • Reviewing package.json and lockfile versions
  • Searching the codebase for imports from @mui/*
  • Identifying usage of MUI X packages (such as Data Grid and Date Pickers)
  • Documenting where each package is used across the application
  • Reviewing MUI v7 migration documentation and upgrade guides
  • Identifying likely compatibility concerns for shared theme and styling infrastructure
  • Summarizing migration priorities for major application areas (Admin, FoodSeeker, Account, Layout, UI, Theme, etc.)
  • Producing a short migration plan that recommends upgrade order and major areas of risk

Known files and folders to review include (non-exhaustive):

  • client/src/theme/
  • client/src/theme/palette.tsx
  • client/src/theme/typography.tsx
  • client/src/theme/overrides/
  • client/src/theme/overrides/TextField.ts
  • client/src/theme/overrides/CssBaseline.ts
  • client/src/components/
  • client/src/styles/
  • client/src/App.tsx
  • client/src/Routes.tsx

Particular attention should be given to:

  • Custom palette augmentation (declare module "@mui/material/styles")
  • Custom Button and Chip variant extensions
  • Theme override structure
  • MUI Grid usage patterns
  • MUI X package compatibility (Data Grid, Date Pickers)
  • Shared styling infrastructure used across multiple folders

PR #2811 appears to primarily update component usage rather than theme infrastructure, so this audit should verify whether additional application-wide work is still required before or after the component migration effort.

Verification after PR #2811

After PR #2811 (or the primary MUI component migration PR) has been merged, this issue should include a verification phase to determine whether additional MUI v7 migration work is still required.

The verification phase should include:

  • Auditing whether theme/overrides/ files remain compatible with MUI v7
  • Verifying MuiTextField and MuiOutlinedInput global overrides continue to apply correctly in MUI v7
  • Verifying MuiCssBaseline global reset behavior and browser-specific input overrides after the upgrade
  • Verifying custom placeholder styling and error-state selectors remain unchanged
  • Confirming fixed input height overrides do not cause regressions in multiline, select, or adorned inputs
  • Verifying custom palette keys (link, inactiveButton, mealProgram, foodPantry, etc.) continue to resolve correctly throughout the application
  • Verifying custom Button variants (gray, recenter) and custom Chip color extensions remain functional
  • Auditing whether any theme augmentation types require updates after the MUI v7 migration
  • Testing representative pages from Admin, FoodSeeker, Account, Layout, and UI to ensure shared theme overrides still render correctly
  • Documenting any remaining migration tasks discovered during verification

This verification step is important because several shared theme files are imported across many components, and a small theme-level incompatibility could affect multiple folders simultaneously.

Action Items

[PLEASE ADD ACTION ITEMS (Dev lead/developer will add)]

Resources

Metadata

Metadata

Assignees

Projects

Status
In Progress

Relationships

None yet

Development

No branches or pull requests

Issue actions