Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
ajianaz avatar

Flutter Ui Ux

  • 775 installs
  • 4 repo stars
  • Updated December 6, 2025
  • ajianaz/skills-collection

flutter-ui-ux is a Claude skill that helps developers generate high-quality responsive Flutter UI components, animations, themes, and screens using modern mobile-first patterns.

About

flutter-ui-ux is a comprehensive Flutter UI and UX skill from ajianaz/skills-collection for building mobile interfaces with modern design patterns. The skill supports creating Flutter UI components and screens, implementing animations and transitions, designing responsive layouts, building custom widgets and themes, and optimizing UI performance and accessibility. Developers reach for flutter-ui-ux when prompts mention create Flutter UI, build Flutter screen, Flutter animations, responsive Flutter layout, custom Flutter widgets, or Flutter theme design. It functions as a pattern library and implementation guide for beautiful, animated, mobile-first Flutter applications rather than backend or state-management-only work.

  • 5-phase sequential workflow that analyzes requirements before generating code
  • Focuses on widget composition, responsive design, purposeful animations, custom themes and 60fps performance
  • Creates reusable, accessible, and maintainable Flutter widgets and screens
  • Implements smooth transitions, micro-interactions and platform-specific considerations for iOS and Android
  • Optimizes UI for accessibility, branding consistency and resource efficiency

Flutter Ui Ux by the numbers

  • 775 all-time installs (skills.sh)
  • Ranked #482 of 1,880 Design & UI/UX skills by installs in the Skillselion catalog
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
npx skills add https://github.com/ajianaz/skills-collection --skill flutter-ui-ux

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs775
repo stars4
Last updatedDecember 6, 2025
Repositoryajianaz/skills-collection

How do you build animated Flutter UI screens?

Generate high-quality, responsive Flutter UI components, animations, themes and screens using modern mobile-first patterns.

Who is it for?

Mobile developers implementing polished Flutter UI, motion, and theming who want agent-guided modern layout patterns.

Skip if: Backend API design, non-Flutter mobile stacks, or projects needing only Dart business logic without UI work.

When should I use this skill?

The user asks to create Flutter UI, build screens, add animations, design responsive layouts, or customize Flutter themes and widgets.

What you get

Flutter widgets, themed screens, responsive layouts, and animation implementations ready to drop into a project.

  • Flutter screen code
  • Custom widgets
  • Theme and animation implementations

Files

SKILL.mdMarkdownGitHub ↗

Flutter UI/UX Development

Create beautiful, responsive, and animated Flutter applications with modern design patterns and best practices.

Core Philosophy

"Mobile-first, animation-enhanced, accessible design" - Focus on:

PriorityAreaPurpose
1Widget CompositionReusable, maintainable UI components
2Responsive DesignAdaptive layouts for all screen sizes
3AnimationsSmooth, purposeful transitions and micro-interactions
4Custom ThemesConsistent, branded visual identity
5Performance60fps rendering and optimal resource usage

Development Workflow

Execute phases sequentially. Complete each before proceeding.

Phase 1: Analyze Requirements

1. Understand app structure - Identify existing widgets, screens, and navigation 2. Design system review - Check existing themes, colors, and typography 3. Platform considerations - Note iOS/Android specific requirements 4. Performance constraints - Identify animation complexity and rendering needs

Output: UI requirements analysis with component breakdown.

Phase 2: Design Widget Architecture

1. Widget hierarchy planning - Design composition tree 2. State management strategy - Choose StatefulWidget vs StatelessWidget 3. Custom widget identification - Plan reusable components 4. Theme integration - Define color schemes and typography

Output: Widget architecture diagram and component specifications.

Phase 3: Implement Core UI

1. Create base widgets - Build foundational components 2. Implement responsive layouts - Use MediaQuery, LayoutBuilder, Flex/Expanded 3. Add custom themes - ThemeData, ColorScheme, TextThemes 4. Integrate navigation - Implement routing and transitions

Widget Composition Patterns:

// ✅ DO: Compose small, reusable widgets
class CustomCard extends StatelessWidget {
  final Widget child;
  final EdgeInsets padding;

  const CustomCard({required this.child, this.padding = EdgeInsets.all(16)});

  @override
  Widget build(BuildContext context) {
    return Card(
      elevation: 4,
      child: Padding(padding: padding, child: child),
    );
  }
}

// ✅ DO: Use const constructors where possible
const Icon(Icons.add) // Better than Icon(Icons.add)

Phase 4: Add Animations

1. Implicit animations - AnimatedContainer, AnimatedOpacity 2. Explicit animations - AnimationController with Tween 3. Hero animations - Screen transitions with Hero widgets 4. Micro-interactions - Button presses, hover effects, loading states

Animation Performance Rules:

// ✅ DO: Use performance-optimized animations
AnimatedBuilder(
  animation: controller,
  builder: (context, child) => Transform.rotate(
    angle: controller.value * 2 * math.pi,
    child: child, // Pass child to avoid rebuilding
  ),
  child: const Icon(Icons.refresh),
)

// ❌ DON'T: Animate expensive operations
// Avoid animating complex layouts or heavy widgets

Phase 5: Optimize and Test

1. Performance profiling - Use Flutter DevTools 2. Accessibility testing - Screen readers, contrast ratios 3. Responsive testing - Multiple screen sizes and orientations 4. Animation smoothness - 60fps validation

Quick Reference

Responsive Design Patterns

TechniqueUse CaseImplementation
LayoutBuilderResponsive layoutsLayoutBuilder(builder: (context, constraints) => ...)
MediaQueryScreen infoMediaQuery.of(context).size.width
Flexible/ExpandedFlex layoutsFlexible(child: ...) or Expanded(child: ...)
AspectRatioFixed ratiosAspectRatio(aspectRatio: 16/9, child: ...)

Animation Types

TypeWidgetDurationUse Case
FadeAnimatedOpacity200-300msShow/hide content
SlideSlideTransition250-350msScreen transitions
ScaleAnimatedScale150-250msButton presses
RotationRotationTransition1000-2000msLoading indicators

Custom Widget Examples

Themed Button:

class ThemedButton extends StatelessWidget {
  final String text;
  final VoidCallback onPressed;

  const ThemedButton({required this.text, required this.onPressed});

  @override
  Widget build(BuildContext context) {
    return ElevatedButton(
      onPressed: onPressed,
      style: ElevatedButton.styleFrom(
        backgroundColor: Theme.of(context).colorScheme.primary,
        foregroundColor: Theme.of(context).colorScheme.onPrimary,
        padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 12),
        shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(8)),
      ),
      child: Text(text),
    );
  }
}

Responsive Card:

class ResponsiveCard extends StatelessWidget {
  final Widget child;

  const ResponsiveCard({required this.child});

  @override
  Widget build(BuildContext context) {
    return LayoutBuilder(
      builder: (context, constraints) {
        if (constraints.maxWidth > 600) {
          return _buildWideLayout(child);
        } else {
          return _buildNarrowLayout(child);
        }
      },
    );
  }

  Widget _buildWideLayout(Widget child) {
    return Card(
      margin: const EdgeInsets.all(16),
      child: Padding(padding: const EdgeInsets.all(24), child: child),
    );
  }

  Widget _buildNarrowLayout(Widget child) {
    return Card(
      margin: const EdgeInsets.all(8),
      child: Padding(padding: const EdgeInsets.all(16), child: child),
    );
  }
}

Resources

  • Widget patterns: See references/widget-patterns.md
  • Animation examples: See references/animation-patterns.md
  • Theme templates: See references/theme-templates.md
  • Performance guide: See references/performance-optimization.md

Technical Stack

  • Core Widgets: StatelessWidget, StatefulWidget, InheritedWidget
  • Layout: Row, Column, Stack, GridView, ListView
  • Animation: AnimationController, Tween, AnimatedWidget
  • Themes: ThemeData, ColorScheme, TextTheme
  • Navigation: Navigator, MaterialPageRoute, Hero

Accessibility (Required)

Always implement:

// Semantic labels for screen readers
Semantics(
  label: 'Add item to cart',
  button: true,
  child: IconButton(icon: Icon(Icons.add_cart), onPressed: () {}),
)

// High contrast support
Theme.of(context).colorScheme.contrast() == Brightness.dark

// Font scaling
MediaQuery.of(context).accessibleNavigation

Performance Guidelines

  • Use const widgets where possible
  • Prefer ListView.builder for long lists
  • Avoid unnecessary rebuilds with const keys
  • Use RepaintBoundary for complex animations
  • Profile with Flutter DevTools regularly

---

This Flutter UI/UX skill transforms mobile app development into a systematic process that ensures beautiful, responsive, and performant applications with exceptional user experiences.

Related skills

How it compares

Choose flutter-ui-ux for Flutter-specific UI and motion work rather than generic mobile design advice.

FAQ

What does flutter-ui-ux help build?

flutter-ui-ux helps developers build Flutter UI components and screens, implement animations and transitions, design responsive layouts, create custom widgets and themes, and improve UI performance and accessibility.

When should flutter-ui-ux activate?

flutter-ui-ux activates when users request Flutter UI creation, screen builds, animations, responsive layouts, custom widgets, or theme design using its documented trigger phrases.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.