flutter_productivity_toolkit 0.1.3 copy "flutter_productivity_toolkit: ^0.1.3" to clipboard
flutter_productivity_toolkit: ^0.1.3 copied to clipboard

A comprehensive Flutter developer productivity toolkit that provides unified solutions for state management, navigation, testing utilities, and development workflow optimization.

Flutter Developer Productivity Toolkit #

pub package License: MIT Flutter

A comprehensive Flutter package that addresses the most critical pain points faced by Flutter developers in 2025. This toolkit provides unified solutions for state management, navigation, testing utilities, and development workflow optimization.

๐ŸŽฏ Built for Developer Productivity โ€ข ๐Ÿ”’ Type-Safe by Design โ€ข โšก Zero Configuration โ€ข ๐Ÿงช Testing First

Why Choose This Toolkit? #

  • Unified Solution: All components work seamlessly together
  • Minimal Boilerplate: Automatic code generation reduces repetitive tasks
  • Type Safety: Compile-time validation prevents runtime errors
  • Production Ready: Battle-tested patterns with comprehensive error handling
  • Incremental Adoption: Use individual features or the complete solution
  • Performance First: Built-in monitoring and optimization tools

Features #

๐Ÿš€ State Management #

  • Reactive Updates: Automatic UI rebuilds with minimal performance impact
  • Dependency Injection: Automatic lifecycle management with zero configuration
  • Built-in Persistence: State automatically saved and restored across app restarts
  • Time-Travel Debugging: Visual state timeline with action replay capabilities
  • Type-Safe Operations: Compile-time validation of state updates

๐Ÿงญ Navigation & Routing #

  • Declarative Routes: Define routes with simple annotations
  • Type-Safe Navigation: Compile-time parameter validation and auto-completion
  • Deep Linking: Automatic URL parsing with parameter extraction
  • Multiple Stacks: Support for complex nested navigation scenarios
  • Route Guards: Built-in authentication and authorization handling

๐Ÿงช Testing Utilities #

  • Zero Setup Testing: Pre-configured environments with automatic mocking
  • Realistic Data: Smart test data generation with customizable factories
  • Integration Ready: Full app lifecycle management for end-to-end tests
  • Performance Testing: Built-in utilities for performance regression detection
  • Property-Based Testing: Generate comprehensive test cases automatically

โšก Performance Monitoring #

  • Real-Time Insights: Live performance metrics during development
  • Memory Leak Detection: Automatic detection with actionable recommendations
  • Widget Optimization: Identify and fix unnecessary rebuilds
  • Custom Metrics: Track application-specific performance indicators
  • Production Analytics: Optional performance tracking for production apps

๐Ÿ”ง Code Generation #

  • Automatic Boilerplate: Generate state managers, routes, and data models
  • API Client Generation: Create type-safe clients from OpenAPI specifications
  • Serialization: Automatic JSON serialization with null safety
  • Localization: Generate type-safe translation access methods
  • Asset References: Automatic asset class generation with IDE support

๐Ÿ“ฆ Development Tools #

  • Pub.dev Optimization: Analyze and optimize packages for maximum discoverability
  • Smart Linting: Flutter-specific best practices with auto-fixes
  • Project Maintenance: Automatic import optimization and structure validation
  • Dependency Analysis: Detect conflicts and suggest optimizations
  • Publication Utilities: Pre-flight checks and automated publishing workflows

Installation #

Add this package to your pubspec.yaml:

dependencies:
  flutter_productivity_toolkit: ^0.1.0

dev_dependencies:
  build_runner: ^2.4.7

Then run:

flutter pub get

Quick Start #

1. Initialize the Toolkit #

import 'package:flutter_productivity_toolkit/flutter_productivity_toolkit.dart';

void main() {
  // Initialize with development configuration
  final config = ToolkitConfiguration.development();
  
  runApp(MyApp());
}

2. State Management #

@GenerateState(persist: true)
class CounterState {
  final int count;
  
  const CounterState({this.count = 0});
  
  @StateAction()
  CounterState increment() => CounterState(count: count + 1);
}

// Generated state manager will be available as CounterStateManager

3. Navigation #

@GenerateRoute('/user/:id/profile')
class UserProfileRoute {
  final String userId;
  
  const UserProfileRoute({required this.userId});
}

// Navigate type-safely
await navigator.navigate<UserProfileRoute, void>(
  '/user/123/profile',
  params: UserProfileRoute(userId: '123'),
);

4. Testing #

void main() {
  group('Counter Tests', () {
    late TestEnvironment testEnv;
    
    setUp(() async {
      testEnv = await TestHelper().setupTestEnvironment();
    });
    
    testWidgets('should increment counter', (tester) async {
      final counter = testEnv.dataFactory.create<CounterState>();
      
      await testEnv.helper.pumpAndSettle(
        tester,
        CounterWidget(initialState: counter),
      );
      
      // Test implementation...
    });
  });
}

Configuration #

The toolkit supports three pre-configured setups:

Development Configuration #

final config = ToolkitConfiguration.development();
// Enables debugging, verbose logging, and real-time monitoring

Production Configuration #

final config = ToolkitConfiguration.production();
// Optimized for performance with minimal overhead

Testing Configuration #

final config = ToolkitConfiguration.testing();
// Configured for reliable test execution

Custom Configuration #

final config = ToolkitConfiguration(
  stateManagement: StateManagementConfig(
    enableDebugging: true,
    enablePersistence: true,
  ),
  navigation: NavigationConfig(
    enableDeepLinking: true,
  ),
  performance: PerformanceConfig(
    enableMonitoring: true,
    thresholds: PerformanceThresholds(
      maxFrameDropsPerSecond: 3,
      minFps: 58.0,
    ),
  ),
);

Code Generation #

Run code generation to create boilerplate code:

flutter packages pub run build_runner build

For continuous generation during development:

flutter packages pub run build_runner watch

Performance Monitoring #

Enable real-time performance monitoring in development:

final monitor = PerformanceMonitor();
monitor.startMonitoring();

// Listen to performance metrics
monitor.metricsStream.listen((metrics) {
  if (!metrics.isPerformanceGood) {
    print('Performance issues detected: ${metrics.warnings}');
  }
});

๐Ÿ“š Documentation #

Getting Started #

  • Quick Start Guide - Build your first app in minutes
  • Installation Guide - Detailed setup instructions
  • Configuration Guide - Customize the toolkit for your needs

Core Features #

  • State Management - Reactive state with automatic persistence
  • Navigation & Routing - Type-safe navigation with deep linking
  • Testing Utilities - Comprehensive testing framework
  • Performance Monitoring - Real-time performance insights
  • Code Generation - Automatic boilerplate reduction
  • Development Tools - Workflow optimization utilities

Migration Guides #

  • From Provider - Step-by-step Provider migration
  • From Bloc - Migrate from Bloc pattern
  • From Riverpod - Transition from Riverpod
  • From GoRouter - Switch from GoRouter

Reference & Support #

  • API Reference - Complete API documentation
  • Troubleshooting - Common issues and solutions
  • FAQ - Frequently asked questions
  • Best Practices - Recommended patterns and guidelines

๐ŸŽฏ Examples #

Explore our comprehensive examples to see the toolkit in action:

  • Todo App - Complete state management showcase
  • Navigation Demo - Advanced routing patterns
  • Performance Monitor - Real-time performance tracking
  • Code Generation - Automatic code generation examples
  • Pub Optimizer - Package optimization tools

๐Ÿ“ View All Examples - Complete example applications with detailed explanations

Contributing #

We welcome contributions! Please see our Contributing Guide for details.

License #

This project is licensed under the MIT License - see the LICENSE file for details.

Support #

Changelog #

See CHANGELOG.md for a detailed list of changes and updates.

2
likes
0
points
37
downloads

Publisher

unverified uploader

Weekly Downloads

A comprehensive Flutter developer productivity toolkit that provides unified solutions for state management, navigation, testing utilities, and development workflow optimization.

Homepage
Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

analyzer, build, collection, faker, flutter, meta, path, source_gen

More

Packages that depend on flutter_productivity_toolkit