PluginBench
Rule

flutter app expert

via PatrickJS/awesome-cursorrules

Expert Flutter development guidance with clean architecture, BLoC pattern, and Material 3 design.

What is flutter app expert?

Comprehensive rule for Flutter app development emphasizing clean architecture, proper state management with BLoC, and platform-specific best practices. Use this when building Flutter applications to maintain consistency with industry standards while adapting to your project's existing structure.

  • Guides clean architecture implementation with feature-based folder structure and separation of concerns
  • Establishes state management patterns using BLoC and dependency injection with GetIt
  • Enforces null safety, error handling with Either types, and proper form validation
  • Provides widget composition guidelines including const constructors and performance optimization
  • Defines testing strategy covering unit, widget, and integration tests with proper mocking
  • Recommends Flutter 3.x features, Material 3 design, and platform-specific design guidelines

Applies to

File patterns this rule matches.

**/*
Rule definition (reference)

Source of truth, from the repository.

// Flutter App Expert .cursorrules

// Flexibility Notice

// Note: This is a recommended project structure, but be flexible and adapt to existing project structures. // Do not enforce these structural patterns if the project follows a different organization. // Focus on maintaining consistency with the existing project architecture while applying Flutter best practices.

// Flutter Best Practices

const flutterBestPractices = [ "Adapt to existing project architecture while maintaining clean code principles", "Use Flutter 3.x features and Material 3 design", "Implement clean architecture with BLoC pattern", "Follow proper state management principles", "Use proper dependency injection", "Implement proper error handling", "Follow platform-specific design guidelines", "Use proper localization techniques", ];

// Project Structure

// Note: This is a reference structure. Adapt to the project's existing organization

const projectStructure = lib/ core/ constants/ theme/ utils/ widgets/ features/ feature_name/ data/ datasources/ models/ repositories/ domain/ entities/ repositories/ usecases/ presentation/ bloc/ pages/ widgets/ l10n/ main.dart test/ unit/ widget/ integration/;

// Coding Guidelines

const codingGuidelines = `

  1. Use proper null safety practices
  2. Implement proper error handling with Either type
  3. Follow proper naming conventions
  4. Use proper widget composition
  5. Implement proper routing using GoRouter
  6. Use proper form validation
  7. Follow proper state management with BLoC
  8. Implement proper dependency injection using GetIt
  9. Use proper asset management
  10. Follow proper testing practices `;

// Widget Guidelines

const widgetGuidelines = `

  1. Keep widgets small and focused
  2. Use const constructors when possible
  3. Implement proper widget keys
  4. Follow proper layout principles
  5. Use proper widget lifecycle methods
  6. Implement proper error boundaries
  7. Use proper performance optimization techniques
  8. Follow proper accessibility guidelines `;

// Performance Guidelines

const performanceGuidelines = `

  1. Use proper image caching
  2. Implement proper list view optimization
  3. Use proper build methods optimization
  4. Follow proper state management patterns
  5. Implement proper memory management
  6. Use proper platform channels when needed
  7. Follow proper compilation optimization techniques `;

// Testing Guidelines

const testingTestingGuidelines = `

  1. Write unit tests for business logic
  2. Implement widget tests for UI components
  3. Use integration tests for feature testing
  4. Implement proper mocking strategies
  5. Use proper test coverage tools
  6. Follow proper test naming conventions
  7. Implement proper CI/CD testing `;

Related rules

Senior full-stack TypeScript, React, Node.js guidance with clean architecture, testing, and WHY-oriented reasoning.

**/*
41k
via PatrickJS/awesome-cursorrules

Quantitative factor research skills for designing, evaluating, and mining alpha factors in equities markets.

**/*
41k
via PatrickJS/awesome-cursorrules

Android development with Jetpack Compose, clean architecture, and Material Design 3.

**/*
41k
via PatrickJS/awesome-cursorrules

Angular development with Novo Elements UI library using standalone components.

**/*
41k
via PatrickJS/awesome-cursorrules

Expert Angular 18 + TypeScript development with Jest, emphasizing clean code and performance.

**/*
41k
via PatrickJS/awesome-cursorrules

Manage Kubernetes clusters, add-ons, stacks, and credentials via the Ankra CLI platform.

**/*.sh +5
41k
via PatrickJS/awesome-cursorrules