voo_navigation 0.0.5
voo_navigation: ^0.0.5 copied to clipboard
A comprehensive, adaptive navigation package for Flutter that automatically adjusts to different screen sizes and platforms with Material 3 design.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.0.5 - 2025-09-22 #
Changed #
-
Visual Design Overhaul:
- Replaced gradient backgrounds with sophisticated solid colors (#1F2937 light, #1A1D23 dark)
- Professional dark sidebar design matching modern SaaS applications (Notion, Linear, Figma)
- Improved selection states with primary color at 12% opacity and subtle borders
- Reduced hover effects to 5% white overlay for cleaner interactions
- Refined shadows and elevation for better depth perception
-
UX Improvements:
- Added AnimatedSwitcher for smooth icon transitions (200ms duration)
- Better visual hierarchy with theme-aware colors
- Optimized typography with proper font weights (600 selected, 400 unselected)
- Improved spacing and padding for better touch targets
- Enhanced micro-animations for state changes
Fixed #
-
Critical Issues:
- Fixed RenderFlex overflow by 3 pixels in bottom navigation
- Resolved window.dart assertion errors in web platform
- Fixed padding and margin calculations for compact layouts
- Corrected icon sizes to prevent content overflow (20-22px range)
- Fixed DecoratedBox vs Container usage for better performance
-
Layout Issues:
- Reduced bottom navigation height from 70px to 65px to prevent overflow
- Adjusted padding from 6px to 4px vertical in navigation items
- Fixed font sizes (11px for labels) to fit within constraints
- Improved responsive behavior when scaling down width
Improved #
- Code Quality:
- Removed unused variable warnings (primaryColor, isDark)
- Fixed deprecated withOpacity() usage with withValues()
- Consistent use of theme colors instead of hardcoded values
- Better separation of concerns in color management
0.0.4 - 2025-01-22 #
Added #
-
go_router Integration:
- Full integration with go_router's
StatefulNavigationShellfor native navigation VooNavigationRouteentity with multiple transition types (fade, slide, scale, material)- Support for nested routes and children routes with proper state preservation
VooNavigationBuilderfor fluent API configurationVooGoRouterprovider with shell route support (optional utility)VooNavigationShellwrapper for automatic route synchronization
- Full integration with go_router's
-
Material You Support:
VooNavigationBuilder.materialYou()factory for instant Material You theming- Dynamic color theming with seed colors
- Enhanced default animations (350ms with easeInOutCubicEmphasized curve)
- Rounded indicators with 24px border radius by default
-
Developer Experience:
- Direct integration with go_router's native patterns
- Works seamlessly with
StatefulShellRoute.indexedStack - Support for
goBranch()navigation with state preservation - Comprehensive examples for StatefulNavigationShell usage
- Type-safe navigation with go_router
-
Testing:
- Comprehensive test coverage for navigation routes
- Tests for nested and children routes
- Integration tests for StatefulNavigationShell
- Builder pattern tests
- All tests following voo_forms architecture pattern
Changed #
- VooAdaptiveScaffold now directly accepts StatefulNavigationShell as body
- Navigation is handled through go_router's native navigation methods
- Improved documentation with go_router integration examples
Fixed #
- Navigation state synchronization with go_router
- Proper handling of nested route navigation
- Badge display in navigation items
0.0.3 - 2025-01-10 #
Changed #
- Minor version bump for package registry update
- Package maintenance and dependency alignment
0.0.2 - 2025-01-09 #
Enhanced #
-
Visual Design Improvements:
- Implemented Material 3 glassmorphism effects with subtle blur and surface tints
- Added smooth hover states with MouseRegion for desktop platforms
- Enhanced ripple effects and splash colors for better touch feedback
- Improved border radius and rounded corners throughout components
- Added gradient backgrounds for custom navigation bars
- Better shadow and elevation handling with proper Material 3 colors
-
Animation Enhancements:
- Added scale animations with easeOutBack curves for delightful interactions
- Implemented rotation animations for micro-interactions
- Improved fade transitions using AnimatedSwitcher
- Enhanced selection animations with individual item controllers
- Better transition handling between navigation types with AnimatedSwitcher
-
Navigation Rail Improvements:
- Increased compact width from 80px to 88px for better spacing
- Fixed item height to 64px in compact mode for improved touch targets
- Improved badge positioning to prevent overlap with selection indicators
- Added conditional badge sizing for compact vs extended modes
- Better icon sizing (28px in compact mode) for visual hierarchy
- Fixed padding and spacing issues in compact layout
-
Badge System Refinements:
- Reduced dot badge size from 8px to 6px for subtlety
- Implemented compact badge variant with smaller font size (9px)
- Added white border to badges for better visibility
- Improved badge positioning with Stack overflow handling
- Smart text truncation for badges (99+ for numbers over 99)
Fixed #
-
Critical Issues:
- Fixed massive overflow (99828 pixels) when transitioning between rail and drawer
- Resolved opacity animation error in badge animations (clamped values to 0.0-1.0)
- Fixed bottom navigation blur/shadow artifacts appearing above content
- Corrected navigation rail border radius not being applied
- Fixed test failures related to width expectations and badge detection
-
Layout Issues:
- Fixed cramped spacing in compact navigation rail
- Resolved badge overlap issues in selection state
- Corrected padding inconsistencies across different navigation types
- Fixed ClipRect wrapping to prevent transition overflow
Improved #
-
Code Quality:
- Removed redundant lint warnings (spreadRadius, MainAxisAlignment defaults)
- Better separation of concerns with cleaner widget composition
- Improved test coverage with all 65 tests passing
- Enhanced documentation and code comments
-
Performance:
- Optimized animation controllers with proper disposal
- Reduced unnecessary widget rebuilds
- Better memory management for hover state tracking
- Improved transition performance with KeyedSubtree
0.0.1 - 2025-01-01 #
Added #
-
Initial release of VooNavigation package
-
Core Features:
- Fully adaptive navigation system that automatically switches between navigation types based on screen size
- Material 3 design compliance with latest design guidelines
- Support for bottom navigation, navigation rail, extended rail, and navigation drawer
- Platform and screen size agnostic implementation
-
Domain Entities:
VooNavigationType- Enum for navigation layout typesVooNavigationItem- Rich navigation item with badges, dropdowns, and customizationVooNavigationConfig- Comprehensive configuration systemVooBreakpoint- Material 3 responsive breakpoints
-
UI Components (Organisms):
VooAdaptiveScaffold- Main adaptive scaffold componentVooAdaptiveAppBar- Responsive app bar with drawer toggleVooAdaptiveBottomNavigation- Material 3 bottom navigationVooAdaptiveNavigationRail- Rail navigation for tablets/desktopsVooAdaptiveNavigationDrawer- Full-featured navigation drawer
-
UI Components (Molecules):
VooNavigationItemWidget- Reusable navigation item rendererVooNavigationBadge- Animated badges with count, text, or dotVooNavigationDropdown- Expandable dropdown for nested navigation
-
UI Components (Atoms):
VooNavigationIcon- Animated icon with selected state transitionsVooNavigationLabel- Text label with scaling and truncationVooNavigationIndicator- Selection indicators with multiple styles
-
Utilities:
VooNavigationHelper- Helper utilities for navigation type detectionVooNavigationAnimations- Comprehensive animation utilities
-
Features:
- Rich navigation items with badges (count, text, dot)
- Expandable sections with nested navigation
- Custom icons and selected states
- Extensive theming and customization options
- Smooth animations throughout
- Haptic feedback support
- Floating action button integration
- Custom header and footer widgets
- Section dividers and headers
Dependencies #
- Flutter SDK >=3.0.0
- voo_ui_core: ^0.1.0
- voo_motion: ^0.0.1
- equatable: ^2.0.5
- material_design_icons_flutter: ^7.0.7296
Development #
- Clean architecture with domain, data, and presentation layers
- Atomic design pattern for UI components
- Comprehensive example app demonstrating all features
- Unit tests for domain entities
- Zero lint warnings or errors