Skip to content

Redesign auth pages and add password reset flow - #28

Merged
tayloraj10 merged 4 commits into
pr/theming-infrafrom
pr/auth-pages
Jul 21, 2026
Merged

Redesign auth pages and add password reset flow#28
tayloraj10 merged 4 commits into
pr/theming-infrafrom
pr/auth-pages

Conversation

@tayloraj10

Copy link
Copy Markdown
Contributor

Summary

  • Reworks the login page
  • Adds forgot-password, reset-password, and confirm routes with their validation schemas
  • Updates the unauthenticated layout to use the new shared theming components

Base branch: pr/theming-infra (#27) — this PR only shows the auth-specific diff on top of it.

Test plan

  • npm run typecheck passes
  • Login, forgot-password, reset-password, and confirm flows render and submit correctly

Reworks the login page and adds forgot-password, reset-password, and
confirm routes, plus their validation schemas.
Ports WaveDivider to sx-based styling (className -> sx) and rewrites the
auth layout's Tailwind classes as MUI Box/sx, matching the conversion
started on pr/theming-infra.
All components now use MUI's sx prop / theme system; no Tailwind
utility classes remain anywhere in the app, so the plugin, deps, and
directives are no longer needed. Custom properties in app.css are
trimmed to only the tokens still referenced by plain CSS (keyframes,
scrollbar colors); component-level design tokens live in theme.ts.
The trimmed app.css no longer defines --color-brand-400/500/700, so
these now use the existing brand[] JS constants like the rest of the
file already does.
@tayloraj10
tayloraj10 merged commit b4c9690 into pr/theming-infra Jul 21, 2026
1 check failed
tayloraj10 added a commit that referenced this pull request Jul 22, 2026
* Update docs, README, and project config

Adds implementation-progress and resource-review-flow-scoping docs,
refreshes the README, and tweaks Biome/CI/.gitignore config.

* Add theming system and shared UI components

Introduces a centralized MUI theme, dark/light mode provider, and
shared components (ThemeToggle, WaveDivider, chip color helpers)
used across the authenticated and unauthenticated layouts.

* Add resource reviews list page

Adds the resource-revisions API client, ResourceRevision type, and
the /reviews list page for browsing pending review submissions.

* Add authenticated layout and dashboard redesign

Applies the shared theming and layout components to the authenticated
shell and rebuilds the dashboard page, including the pending-reviews
summary card.

* Add resource review detail page

Adds the /reviews/:id page for approving, rejecting, and editing an
individual resource revision submission.

* Refactor theming system to use cookies for persistence

Updated the theme mode handling in the application by removing the inline script for theme initialization and implementing a cookie-based approach. The ThemeModeProvider now accepts an initial mode, and the theme mode is stored in a cookie for better SSR support. Additionally, updated .gitignore to exclude Docker build artifacts.

* Convert WaveDivider, ThemeToggle, and root ErrorBoundary from Tailwind to MUI

Replaces className-based Tailwind styling with MUI Box/sx in the components
that live on this branch. Tailwind itself stays installed for now since
downstream layout files (auth-pages, dashboard-layout) still use it.

* Convert authenticated layout from Tailwind to MUI

* Remove Tailwind CSS infrastructure

All components now use MUI's sx prop / theme system; no Tailwind
utility classes remain anywhere in the app, so the plugin, deps, and
directives are no longer needed. Custom properties in app.css are
trimmed to only the tokens still referenced by plain CSS (keyframes,
scrollbar colors); component-level design tokens live in theme.ts.

* Convert remaining pages to MUI and remove Tailwind CSS infrastructure

Converts root.tsx, both authenticated/unauthenticated layouts, and
the theme components from Tailwind classes to MUI, then removes the
Tailwind vite plugin, dependency, and CSS directives now that nothing
in this branch renders with them.

* Convert remaining pages to MUI and remove Tailwind CSS infrastructure

Converts root.tsx's ErrorBoundary, ThemeToggle, and the unauthenticated
layout from Tailwind classes to MUI, then removes the Tailwind vite
plugin, dependency, and CSS directives now that nothing in this branch
renders with them.

* Convert remaining pages to MUI and remove Tailwind CSS infrastructure

Converts the authenticated layout, WaveDivider, ThemeToggle, root.tsx's
ErrorBoundary, and the unauthenticated layout from Tailwind classes to
MUI, then removes the Tailwind vite plugin, dependency, and CSS
directives now that nothing in this branch renders with them.

* Redesign auth pages and add password reset flow (#28)

* Redesign auth pages and add password reset flow

Reworks the login page and adds forgot-password, reset-password, and
confirm routes, plus their validation schemas.

* Convert unauthenticated layout from Tailwind to MUI

Ports WaveDivider to sx-based styling (className -> sx) and rewrites the
auth layout's Tailwind classes as MUI Box/sx, matching the conversion
started on pr/theming-infra.

* Remove Tailwind CSS infrastructure

All components now use MUI's sx prop / theme system; no Tailwind
utility classes remain anywhere in the app, so the plugin, deps, and
directives are no longer needed. Custom properties in app.css are
trimmed to only the tokens still referenced by plain CSS (keyframes,
scrollbar colors); component-level design tokens live in theme.ts.

* Fix WaveDivider colors referencing removed CSS custom properties

The trimmed app.css no longer defines --color-brand-400/500/700, so
these now use the existing brand[] JS constants like the rest of the
file already does.
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.

2 participants