Skip to content

[STU-110] Mobile bottom tab navigation visible at 768px breakpoint#23

Merged
BAWES merged 1 commit into
mainfrom
feature/STU-110-mobile-bottom-tab-navigation
May 21, 2026
Merged

[STU-110] Mobile bottom tab navigation visible at 768px breakpoint#23
BAWES merged 1 commit into
mainfrom
feature/STU-110-mobile-bottom-tab-navigation

Conversation

@BAWES
Copy link
Copy Markdown
Owner

@BAWES BAWES commented May 21, 2026

Summary

  • Extracted the workspace sidebar-to-bottom-tab switch CSS into its own @media (max-width: 768px) media query
  • Previously the mobile layout activated at 680px (phone-only); now it activates at 768px (tablet widths)
  • Removed duplicate styles from the 680px breakpoint

What was already in place

  • WorkspaceMobileNavigation component already exists in src/modules/workspace/WorkspaceNavigation.tsx
  • It's already rendered in WorkspaceOS.tsx and WorkspaceShell.tsx
  • navForRole() already handles all 5 roles (admin, staff, candidate, company, inspector)
  • CSS for .mobileTabBar as a fixed bottom bar already existed, just at the wrong breakpoint

Test plan

  • Verify that sidebar is hidden and bottom tab bar appears between 681px–768px viewport widths
  • Verify sidebar remains visible above 768px
  • Verify bottom tab bar remains visible below 680px
  • Test with admin, staff, candidate, company, and inspector roles

🤖 Generated with Claude Code

Summary by CodeRabbit

Release Notes

  • Style
    • Enhanced responsive design for mobile devices with improved layout adjustments and optimized mobile navigation bar styling.

Review Change Stack

Extract the sidebar-to-bottom-tab switch into its own 768px media query
so mobile tab navigation activates at the specified tablet breakpoint
instead of only at narrow phone widths.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@vercel
Copy link
Copy Markdown

vercel Bot commented May 21, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
studenthub-next Ready Ready Preview, Comment May 21, 2026 10:44am

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 21, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 2639d200-6518-407e-afe7-445548a333aa

📥 Commits

Reviewing files that changed from the base of the PR and between c8ed21b and b53b658.

📒 Files selected for processing (1)
  • src/app/styles.css

Walkthrough

The CSS stylesheet is restructured to introduce a new responsive breakpoint at 768px maximum width, consolidating mobile layout behaviors previously scattered across smaller breakpoints. Shell layout, workspace rail visibility, workspace stage sizing, and mobile bottom tab bar styles are moved to the larger breakpoint for consistency, with redundant rules removed from the 680px breakpoint.

Changes

Mobile responsive breakpoint consolidation

Layer / File(s) Summary
Mobile responsive breakpoint reorganization
src/app/styles.css
New @media (max-width: 768px) block introduces mobile layout rules: .shell becomes display: block, .workspaceRail is hidden, .workspaceStage is resized and padded, and .mobileTabBar is styled as fixed bottom navigation with active state and hidden scrollbars. Duplicate rules are removed from @media (max-width: 680px) block to consolidate mobile behavior.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Possibly related issues

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically identifies the main change: moving mobile bottom tab navigation to activate at 768px breakpoint.
Description check ✅ Passed The description covers summary, changes, and test plan, but is missing the required template sections: Type checklist, full Checklist, and Screenshots section.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/STU-110-mobile-bottom-tab-navigation

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

src/app/styles.css

Oops! Something went wrong! :(

ESLint: 9.39.4

TypeError [ERR_IMPORT_ATTRIBUTE_MISSING]: Module "file:///.eslintrc.json?mtime=1779360231883" needs an import attribute of "type: json"
at validateAttributes (node:internal/modules/esm/assert:88:15)
at defaultLoadSync (node:internal/modules/esm/load:164:3)
at #loadAndMaybeBlockOnLoaderThread (node:internal/modules/esm/loader:776:12)
at #loadSync (node:internal/modules/esm/loader:796:49)
at ModuleLoader.load (node:internal/modules/esm/loader:762:26)
at ModuleLoader.loadAndTranslate (node:internal/modules/esm/loader:504:31)
at #getOrCreateModuleJobAfterResolve (node:internal/modules/esm/loader:555:36)
at afterResolve (node:internal/modules/esm/loader:603:52)
at ModuleLoader.getOrCreateModuleJob (node:internal/modules/esm/loader:609:12)
at node:internal/modules/esm/loader:628:32


Comment @coderabbitai help to get the list of available commands and usage tips.

@BAWES BAWES merged commit 2adb916 into main May 21, 2026
9 checks passed
@BAWES BAWES deleted the feature/STU-110-mobile-bottom-tab-navigation branch May 21, 2026 10:53
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.

1 participant