Collection of beautiful and functional Flutter UI examples showcasing various design patterns and implementations. Each example demonstrates modern UI/UX principles with responsive layouts and smooth animations.
Before getting started, make sure you have the following installed:
- Flutter SDK: >=3.10.0 <4.0.0
- Dart SDK: >=3.10.0 <4.0.0
- IDE: VSCode or Android Studio with Flutter extensions
- Platforms:
- For iOS: Xcode (macOS only)
- For Android: Android Studio or Android SDK
git clone <repository-url>
cd flutter_ui_examplesflutter pub getThe project uses flutter_gen to generate type-safe access to assets:
flutter pub run build_runner build --delete-conflicting-outputsAssets are automatically compiled, including:
- Images
- SVG vector graphics
- Custom fonts
flutter run# iOS
flutter run -d iPhone
# Android
flutter run -d android# iOS
flutter build ios
# Android (App Bundle)
flutter build appbundle
# Android (APK)
flutter build apklib/
├── common/ # Common utilities and shared code
│ ├── gen/ # Generated assets (flutter_gen)
│ ├── hooks/ # Custom Flutter hooks
│ └── menu/ # Menu navigation
├── ui_adidas_ecommerce/ # Adidas e-commerce UI
│ ├── model/ # Data models
│ └── widget/ # UI widgets
├── ui_beer/ # Beer app UI
│ ├── model/
│ └── widget/
├── ui_furniture/ # Furniture store UI
│ ├── model/
│ └── widget/
├── ui_ice_cream/ # Ice cream shop UI
│ ├── model/
│ └── widget/
├── ui_login/ # Login screens
│ └── widget/
├── ui_music/ # Music player UI
│ ├── model/
│ └── widget/
├── ui_on_boarding/ # Onboarding screens
│ ├── model/
│ └── widget/
├── ui_shopping/ # Shopping app UI
│ ├── model/
│ └── widget/
├── ui_sneaky/ # Sneaker store UI
│ ├── model/
│ └── widget/
├── ui_story/ # Social media story UI
│ ├── model/
│ └── widget/
├── ui_streaming/ # Video streaming UI
│ ├── model/
│ └── widget/
└── ui_switch/ # Custom switch widgets
└── widget/
assets/
├── fonts/ # Custom fonts
│ ├── AvenirLTStd/
│ ├── MuseoSansCyrl/
│ ├── PoetsenOne/
│ └── Ritts/
├── images/ # Image assets
│ ├── adidas/
│ ├── beer/
│ ├── furniture/
│ ├── ice_cream/
│ ├── login/
│ ├── music/
│ ├── onboarding/
│ ├── shopping/
│ ├── sneaky/
│ ├── story/
│ └── streaming/
└── svg/ # SVG vector graphics
├── furniture/
├── ice_cream/
├── login/
├── shopping/
└── story/
- Description: Modern e-commerce interface inspired by Adidas
- Features:
- Product listing with grid layout
- Product detail view
- Shopping cart
- Custom product cards
- Smooth page transitions
- Description: Craft beer discovery interface
- Features:
- Horizontal scrolling beer cards
- Detailed beer information
- Rating system
- Custom animations
- Rich visual design
- Description: Elegant furniture shopping experience
- Features:
- Product catalog with category filtering
- 3D-like product views
- Add to cart functionality
- Clean, minimalist design
- Vector graphics integration
- Description: Colorful ice cream ordering interface
- Features:
- Visual flavor selection
- Custom illustrations
- Order builder
- Playful animations
- Vibrant color scheme
- Description: Collection of modern login designs
- Features:
- Multiple login variations
- Social media authentication
- Form validation patterns
- Smooth transitions
- Responsive layouts
- Description: Feature-rich music player interface
- Features:
- Now playing screen
- Playlist management
- Seek bar with circular progress
- Album artwork display
- Custom audio controls
- Description: Engaging onboarding experience
- Features:
- Swipeable pages
- Progress indicators
- Call-to-action buttons
- Beautiful illustrations
- Smooth page transitions
- Description: Modern shopping application interface
- Features:
- Product browsing
- Search functionality
- Wishlist/favorites
- Category navigation
- Shopping cart
- Description: Premium sneaker shopping experience
- Features:
- Featured sneaker showcase
- Size selection
- Color variants
- Add to bag animation
- Premium feel design
- Description: Instagram-style story viewer
- Features:
- Story progress indicators
- Swipe gestures
- Profile information
- Interactive elements
- Full-screen media display
- Description: Netflix-style streaming interface
- Features:
- Content carousel
- Video thumbnails
- Category browsing
- Featured content sections
- Continue watching
- Description: Collection of custom switch widgets
- Features:
- Multiple switch styles
- Smooth animations
- Custom designs
- Interactive toggles
- Reusable components
- Responsive Layouts: Adapts to different screen sizes
- Custom Widgets: Reusable UI components
- Animations: Smooth, native-feeling animations
- Vector Graphics: Scalable SVG assets
- Custom Fonts: Typography variety with custom fonts
- Gradient Effects: Eye-catching gradient implementations
- Flutter Hooks: Modern state management
- Custom Painters: Advanced drawing capabilities
- Gesture Handling: Touch and swipe interactions
- Page Transitions: Custom navigation animations
- Asset Management: Type-safe asset access with flutter_gen
- Code Organization: Feature-based structure
- circular_seek_bar: Circular progress/seek bar widget
- flutter_rating_bar: Star rating widget
- simple_gradient_text: Gradient text effects
- gap: Spacing widgets
- vector_graphics: Optimized SVG rendering
- google_fonts: Google Fonts integration
- vector_math: Vector and matrix operations
- flutter_hooks: React-like hooks for Flutter
- uuid: Unique identifier generation
- collection: Enhanced collection utilities
- build_runner: Code generation
- flutter_gen_runner: Type-safe asset generation
- vector_graphics_compiler: SVG compilation
- very_good_analysis: Strict lint rules
The project includes several custom font families:
- AvenirLTStd: Classic, clean font (Book, Roman, Black weights)
- PoetsenOne: Playful, rounded font
- Ritts: Cursive, elegant font
- MuseoSansCyrl: Modern sans-serif (300, 700 weights)
Over 100+ high-quality images organized by UI example:
- Product photos
- Background images
- Icons and illustrations
- Profile pictures
- Sample content
Optimized SVG assets for:
- Icons
- Illustrations
- Logos
- Decorative elements
All SVGs are compiled to vector graphics format for optimal performance.
The project uses very_good_analysis to maintain code quality:
flutter analyzeflutter format .When adding new assets:
flutter pub run build_runner build --delete-conflicting-outputsVerify that Flutter is installed correctly and in your PATH:
flutter doctorMake sure assets are generated:
flutter pub run build_runner build --delete-conflicting-outputs- Verify SVG files are valid
- Check
vector_graphics_compileris installed - Ensure SVG transformers are configured in pubspec.yaml
- Verify font files exist in assets/fonts/
- Check font family name matches pubspec.yaml
- Run
flutter cleanand rebuild
Clean and rebuild:
flutter clean
flutter pub get
flutter pub run build_runner build --delete-conflicting-outputs
flutter runThis project implements several performance optimizations:
- Vector Graphics: SVGs compiled to efficient vector format
- Image Optimization: Properly sized images for mobile
- Lazy Loading: Widgets loaded on demand
- Const Constructors: Reduced rebuilds
- Asset Preloading: Critical assets loaded early
Each UI example demonstrates different Flutter concepts:
- Layout: Flex, Stack, Positioned, CustomScrollView
- Animations: AnimationController, Tween, Hero
- Gestures: GestureDetector, Draggable, Dismissible
- Custom Painting: CustomPaint, Canvas operations
- State Management: Flutter Hooks, ValueNotifier
- Navigation: Navigator 2.0 patterns
- Study individual UI implementations
- Understand layout patterns
- Learn animation techniques
- Explore gesture handling
- Copy and adapt designs for your projects
- Extract reusable widgets
- Use as design inspiration
- Build upon existing patterns
- Clean code organization
- Reusable components
- Responsive design principles
- Performance considerations
- Create a branch from
main - Make your changes
- Run analysis:
flutter analyze - Format code:
flutter format . - Test on multiple devices
- Create a Pull Request to
main
To add a new UI example:
- Create a new directory:
lib/ui_example_name/ - Add model folder if needed:
lib/ui_example_name/model/ - Add widget folder:
lib/ui_example_name/widget/ - Create assets folder:
assets/images/example_name/ - Add SVG assets if needed:
assets/svg/example_name/ - Update pubspec.yaml with new asset paths
- Run asset generation
- Add to menu navigation in
lib/common/menu/
[Include license information here]