🎯 flutter_blueprint

Enterprise-grade Flutter app scaffolding CLI β€” generates production-ready Flutter projects with 43+ professional files, complete architecture, and best practices.

Pub Version License: MIT Flutter 3.38+

πŸ“± Note: CLI runs on desktop (Windows/Linux/macOS) to generate Flutter projects that support all platforms (Android, iOS, Web, Desktop).

πŸš€ Quick Start

Installation

# Windows (PowerShell)
iex (irm 'https://rawgit.flutter-io.cn/chirag640/flutter_blueprint-Package/main/scripts/install.ps1')

# macOS / Linux
dart pub global activate flutter_blueprint

Create a Project

# Interactive wizard (recommended)
flutter_blueprint init

# Quick mode with options
flutter_blueprint init my_app --state riverpod --api --theme --tests

✨ Key Features

Category Features
Architecture Clean architecture, 43+ files, feature-based structure
State Management Provider, Riverpod, or Bloc
API Layer Dio + Auth/Retry/Logger interceptors, Universal API Configurator
Storage LocalStorage + SecureStorage + optional Hive caching
UI Components Theme system, reusable widgets, Material 3
DevOps GitHub Actions, GitLab CI, Azure Pipelines
Extras Pagination, Analytics, Security utilities, i18n

πŸ› οΈ CLI Commands

init - Create New Project

flutter_blueprint init <app_name> [options]
Flag Description
--state <choice> State management: provider, riverpod, bloc
--platforms <list> Target: mobile, web, desktop, all
--ci <provider> CI/CD: github, gitlab, azure
--api Include API client (prompts for backend type)
--theme Include theme system
--env Include environment config
--tests Include test scaffolding
--hive Include Hive offline caching
--pagination Include pagination support
--analytics <provider> Analytics: firebase, sentry
--security <level> Security: basic, standard, enterprise

πŸ”Œ API Backend Presets

When --api is enabled, choose from built-in presets:

  • Modern REST - HTTP 200 + JSON data
  • Legacy .NET - success: true/false pattern
  • Laravel - data wrapper, message field
  • Django REST - results array, detail errors
  • Custom - manual configuration

add feature - Add Features to Existing Project

flutter_blueprint add feature <name> [--api] [--no-data] [--no-domain]

πŸ“ Generated Structure

my_app/
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ main.dart
β”‚   β”œβ”€β”€ app/app.dart
β”‚   β”œβ”€β”€ core/
β”‚   β”‚   β”œβ”€β”€ api/          # API client + interceptors
β”‚   β”‚   β”œβ”€β”€ config/       # App config + env loader
β”‚   β”‚   β”œβ”€β”€ errors/       # Exceptions + failures
β”‚   β”‚   β”œβ”€β”€ routing/      # Router + guards
β”‚   β”‚   β”œβ”€β”€ storage/      # Local + secure storage
β”‚   β”‚   β”œβ”€β”€ theme/        # Colors, typography, themes
β”‚   β”‚   β”œβ”€β”€ utils/        # Logger, validators, extensions
β”‚   β”‚   └── widgets/      # Reusable UI components
β”‚   └── features/         # Feature modules
β”œβ”€β”€ test/                 # Test scaffolding
└── pubspec.yaml

🀝 Team Collaboration

Share configurations across your team:

# Import team config
flutter_blueprint share import ./company_standard.yaml

# Create project from config
flutter_blueprint init my_app --from-config company_standard

πŸ“š Documentation

πŸ“„ License

MIT License - see LICENSE

πŸ’¬ Support


Made with ❀️ for the Flutter community ⭐

Libraries

flutter_blueprint