4.0 KiB
Login Page Design - shadcn-vue Login01 Style
This document describes the new login and registration page design based on the shadcn-vue Login01 block pattern.
Design Overview
The new login and registration pages are standalone pages that appear without any sidebar or header layout. They feature a modern split-screen layout that provides both functionality and visual appeal:
Layout Structure
-
Left Side - Form Area
- Clean, centered form with proper spacing
- Consistent with shadcn-vue design patterns
- Responsive design that stacks on mobile
-
Right Side - Branding/Information Area
- VFX Project Management branding
- Feature highlights with icons
- Hidden on mobile devices (lg:block)
Key Features
Login Page (/login)
- Split Layout: Form on left, branding on right
- Google OAuth Ready: Placeholder button for future Google integration
- Forgot Password: Link placeholder for future implementation
- Responsive: Mobile-first design that adapts to screen size
- Accessibility: Proper labels, focus states, and keyboard navigation
Register Page (/register)
- Consistent Design: Matches login page layout
- Form Validation: Password confirmation and form validation
- Success Messaging: Clear feedback for successful registration
- Admin Approval Notice: Informs users about approval process
Visual Elements
Branding Section
- Logo: VFX-themed icon in primary color
- Title: "VFX Project Management"
- Tagline: Descriptive subtitle
- Feature List: Key benefits with icons
Feature Icons
- Project Management: Checklist icon
- Team Collaboration: Users icon
- Progress Tracking: Bar chart icon
- File Security: Lock icon
- Fast Workflow: Lightning icon
- Professional Tools: Clipboard icon
- Creative Community: Heart icon
Technical Implementation
Layout Logic
The application uses conditional rendering in App.vue to determine when to show the main layout:
- Authentication Pages: Login and register pages are shown standalone without sidebar/header
- Protected Pages: Dashboard and other pages show the full layout with sidebar and header
- Route Detection: Uses
route.meta.requiresGuestand route names to identify auth pages
Components Used
Button- Primary and outline variantsInput- Email and password fieldsLabel- Form field labelsLoader2- Loading spinner from lucide-vue-next
Responsive Breakpoints
- Mobile: Single column, form only, full screen height
- Large (lg): Two-column grid layout, full screen height
- Full Screen: Uses
min-h-screenfor complete viewport coverage
Color Scheme
- Uses CSS custom properties for theming
bg-mutedfor right panel backgroundtext-muted-foregroundfor secondary texttext-primaryfor accent elements
Future Enhancements
Planned Features
-
Google OAuth Integration
- Complete OAuth flow implementation
- Social login buttons functionality
-
Forgot Password
- Password reset email flow
- Reset password form
-
Enhanced Validation
- Real-time form validation
- Password strength indicator
-
Animations
- Smooth transitions
- Loading states
- Form submission feedback
Accessibility Improvements
- Screen reader optimization
- High contrast mode support
- Keyboard navigation enhancements
- Focus management
Usage
The new login pages are automatically used when users navigate to:
/login- Main login page/register- User registration page
Both pages integrate seamlessly with the existing authentication system and maintain all current functionality while providing an improved user experience.
Browser Support
- Modern browsers with CSS Grid support
- Responsive design for mobile devices
- Progressive enhancement for older browsers
The design follows modern web standards and provides a professional, trustworthy appearance that reflects the quality of the VFX Project Management System.