Implement light minimalistic tech redesign with Material 3

Complete transformation from dark to light theme with a professional,
tech-forward design system featuring:

- Material 3 theming with cyan-based color palette (#0891B2 primary)
- Inter font family integration via Google Fonts
- Comprehensive theme system (colors, spacing, typography, shadows)
- Responsive component redesign across all screens
- Enhanced UX with hover animations, Hero transitions, and shimmer loading
- Accessibility features (reduced motion support, high contrast)
- Clean architecture with zero hardcoded values

Theme System:
- Created app_colors.dart with semantic color constants
- Created app_spacing.dart with 8px base spacing scale
- Created app_theme.dart with complete Material 3 configuration
- Added shimmer_loading.dart for image loading states

UI Components Updated:
- Book cards with hover effects and Hero animations
- Bottom navigation with refined styling
- All screens migrated to theme-based colors and typography
- Forms and inputs using consistent design system

Documentation:
- Added REDESIGN_SUMMARY.md with complete implementation overview
- Added IMPLEMENTATION_CHECKLIST.md with detailed task completion status

All components now use centralized theme with no hardcoded values,
ensuring consistency and easy future customization.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-07 13:26:06 +06:00
parent 3004f712f3
commit 5c7b65a0d3
116 changed files with 8484 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
/// Spacing and border radius constants for consistent layout
class AppSpacing {
// Spacing scale (8px base)
static const double xs = 4.0;
static const double sm = 8.0;
static const double md = 16.0;
static const double lg = 24.0;
static const double xl = 32.0;
static const double xxl = 48.0;
static const double xxxl = 64.0;
// Border radius
static const double radiusSmall = 6.0;
static const double radiusMedium = 12.0;
static const double radiusLarge = 16.0;
static const double radiusPill = 8.0;
// Special constants
static const double cardPadding = md;
static const double screenPadding = lg;
static const double gridSpacing = md;
AppSpacing._();
}