petracore_flutter_frontend_starter 1.0.4 copy "petracore_flutter_frontend_starter: ^1.0.4" to clipboard
petracore_flutter_frontend_starter: ^1.0.4 copied to clipboard

A powerful CLI tool and package for generating Flutter projects with clean architecture, Firebase integration, and best practices.

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.

1.0.0 - 2024-09-03 #

Added #

  • ๐ŸŽ‰ Initial release of PetraCore Flutter Frontend Starter
  • ๐Ÿ—๏ธ Project initialization command (petracore init)
  • ๐Ÿš€ Feature generation command (petracore feature)
  • ๐Ÿ”ฅ Firebase integration support (Firestore, Analytics, Cloud Messaging)
  • ๐Ÿงฉ BLoC pattern implementation with Hydrated BLoC
  • ๐Ÿ“ฑ Responsive design with ScreenUtil
  • ๐ŸŽจ Comprehensive UI component library
  • ๐Ÿ” Secure storage and environment variable support
  • ๐Ÿ›ฃ๏ธ Declarative navigation with GoRouter
  • ๐Ÿ“ฆ Clean Architecture implementation
  • ๐Ÿงช Testing infrastructure setup
  • ๐Ÿ“ Comprehensive linting rules
  • ๐Ÿ”ง VS Code configuration
  • ๐Ÿ“š Detailed documentation and examples

Features #

  • Project Generation: Complete Flutter project with clean architecture
  • Feature Generation: Modular feature creation with data/presentation layers
  • Firebase Setup: Pre-configured Firebase integration
  • State Management: BLoC/Cubit with state persistence
  • UI Components: Reusable buttons, inputs, scaffolds, loading states
  • Network Layer: Dio HTTP client with logging and error handling
  • Code Generation: Freezed models and JSON serialization
  • Extensions: Useful string, context, and utility extensions
  • Validation: Input validation and form handling patterns

Supported Platforms #

  • โœ… iOS
  • โœ… Android
  • โœ… Web
  • โœ… macOS
  • โœ… Windows
  • โœ… Linux

Dependencies #

  • flutter_bloc ^8.1.3
  • hydrated_bloc ^9.1.5
  • go_router ^10.0.0
  • flutter_screenutil ^5.4.0
  • dio ^5.3.3
  • firebase_core ^3.12.1
  • cloud_firestore ^5.6.5
  • And many more carefully selected packages

1.0.1 - 2024-09-16 #

Added #

  • ๐ŸŽจ AppBarV1 Component: Comprehensive app bar component with theming support
    • Full integration with design tokens and theme system
    • Multiple variants: AppBarV1, AppBarV1Transparent, AppBarV1Secondary
    • Customizable properties: title, actions, colors, elevation, center title
    • PreferredSizeWidget implementation for proper sizing
  • ๐Ÿ“‘ TabBarV1 Component: Feature-rich tab bar component with theming
    • Multiple variants: TabBarV1, TabBarV1Scrollable, TabBarV1Minimal
    • Comprehensive customization: colors, text styles, indicators, padding
    • Built-in hover and pressed state handling
    • Scrollable support with proper physics
  • ๐Ÿ—๏ธ App Bars Directory: Added app_bars/ folder structure to project generation
  • ๐Ÿ”ง Project Generator Updates: Updated to include app bar components in generated projects
  • ๐Ÿ“ฑ Sample Integration: Updated sample home screen to demonstrate AppBarV1 usage
  • ๐ŸŽจ Design System Integration: All components fully integrated with the app's design tokens

Improved #

  • Enhanced project structure with proper app bar component organization
  • Better component documentation and usage examples
  • More consistent theming across all generated components

1.0.3 - 2024-09-22 #

Fixed #

  • Build Runner Execution: Fixed duplicate build_runner commands during auth flow generation
    • Resolved command execution format issues in FeatureGenerator and AuthFlowGenerator
    • Commands now properly split into command and arguments arrays
    • Eliminated redundant build_runner calls when generating auth features
  • Template Syntax Errors: Fixed syntax error in verify_dto template
    • Corrected Json Map<String, dynamic>toJson() to Map<String, dynamic> toJson()
    • Resolved build_runner compilation errors in auth flow generation

Improved #

  • Logging System: Complete overhaul of CLI logging for better readability and spacing
    • Removed emoji-heavy logging in favor of clean, professional symbols
    • Added proper visual hierarchy with box drawing characters and bullets
    • Implemented consistent spacing and indentation throughout
    • Added new logging methods: spacer(), section(), item(), keyValue()
    • Replaced mason_logger dependency with lightweight custom implementation
    • Enhanced header formatting with bordered boxes
    • Improved step indicators with arrow symbols (โ†’)
    • Added success checkmarks (โœ“), warning symbols (โš ), and error marks (โœ—)
  • Code Generation Logic: Enhanced conditional DTO generation in AuthFlowGenerator
    • request_otp_dto.dart now properly generates when --otp flag is enabled
    • Improved feature flag handling for auth flow components
    • Better separation of concerns between FeatureGenerator and AuthFlowGenerator

Enhanced #

  • Test Suite: Expanded test coverage for auth flow generation
    • Added comprehensive auth flow testing with both basic and complete options
    • Enhanced test script with better command-line options and validation
    • Added separate tests for OTP functionality and email verification
    • Improved error reporting and test result validation
  • CLI Output Formatting: Significantly improved user experience
    • Consistent formatting across all commands (init, feature, auth)
    • Better structured success messages and next steps
    • Enhanced selected features display with bullet points
    • Improved file generation progress reporting
    • Professional, clean appearance without visual clutter

Technical Improvements #

  • Command Architecture: Refined command execution patterns
    • Better error handling in CommandUtils.runCommand
    • Improved working directory management
    • Enhanced verbose logging for debugging
  • Project Configuration: Better project detection and configuration reading
    • Improved ProjectConfigReader with fallback mechanisms
    • Enhanced directory structure validation
  • Code Quality: Removed deprecated dependencies and cleaned up imports
    • Eliminated unused mason_logger dependency
    • Streamlined logging implementation
    • Better separation of concerns in generator classes

[Unreleased] #

Planned #

  • ๐Ÿ“ฑ Additional UI components (date pickers, modals, etc.)
  • ๐Ÿ”ง Custom theme generator
  • ๐Ÿงช Enhanced testing templates
  • ๐Ÿš€ CI/CD workflow templates
  • ๐Ÿ“ฑ Platform-specific optimizations
  • ๐ŸŽจ Design system generator
  • ๐Ÿ”Œ Plugin integration templates
  • ๐Ÿ“Š Analytics dashboard template
  • ๐Ÿ” Advanced authentication patterns
  • ๐ŸŒ Internationalization setup
1
likes
145
points
33
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A powerful CLI tool and package for generating Flutter projects with clean architecture, Firebase integration, and best practices.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

args, cli_util, io, mustache_template, path, recase, yaml

More

Packages that depend on petracore_flutter_frontend_starter