搜尋套件、儲存庫與 APP 分類

套件詳情v1.3.17

flutter_base_kit

一個全面的 Flutter 開發工具包,包含基礎類別、實用工具和常見模式,以加速應用開發。

AndroidiOSWebmacOSWindowsLinux
近 30 天下載
189
喜歡數
1
Pub 分數
160

安裝套件

flutter pub add flutter_base_kit

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

Flutter Base Kit 是一個全面的開發工具包,旨在加速 Flutter 應用的建立。它提供了基礎類別、可重用的實用工具和已建立的模式,以簡化常見的開發任務。透過提供一致的架構和減少樣板程式碼,它幫助團隊維持程式碼品質,並在多個平台上提升生產力。該工具包支援 Android、iOS、Web、macOS、Windows 和 Linux,非常適合需要結構化和可擴展性的跨平台專案。

適用情境

  • 快速原型設計
  • 跨平台應用開發
  • 基於團隊的專案標準化
  • 程式碼庫一致性
  • 減少重複的樣板程式碼
  • 加速入門

主要特色

  • 模型與視圖的基礎類別
  • 用於常見操作的實用函數
  • 標準化錯誤處理
  • 可設定的應用架構
  • 平台無關設計
  • 內建的狀態管理模式

適合對象

  • 新的 Flutter 項目
  • 大規模應用
  • 開發團隊
  • 敏捷工作流程
  • 需要可維護結構的專案
  • 快速迭代週期

使用建議

  • 需要理解核心 Flutter 概念
  • 可能需要針對獨特的應用邏輯進行自訂
  • 依賴穩定的 Dart/Flutter 版本
  • 並非完整的框架取代品
  • 最佳搭配清晰的架構規劃使用
  • 新團隊成員可能需要一定的學習曲線

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

Flutter Base Kit 🚀

Flutter Base Kit Logo

pub package

One-click configuration of project foundation using best practices and time-tested templates

Create new Flutter applications with pre-configured architecture: routing, DI, networking, localization, theming, and much more.

Why Flutter Base Kit?

  • ⚡ Quick Start - don't waste time setting up architecture
  • 🏗️ Ready Structure - DI, routing, API, themes, localization
  • 📱 Best Practices - proven architecture from real projects
  • 🔧 CLI Tool - create projects with a single command

Installation

Activate package globally
dart pub global activate flutter_base_kit
If command not found

Windows:

  • Add to PATH: %LOCALAPPDATA%\Pub\Cache\bin

macOS/Linux:

  • Add to ~/.bashrc or ~/.zshrc: export PATH="$PATH":"$HOME/.pub-cache/bin"

📋 If you don't have Dart/Flutter SDK installed

Windows
  1. Download Flutter SDK from flutter.dev
  2. Extract and add to PATH
  3. Run flutter doctor
macOS
brew install flutter
flutter doctor
Linux
sudo snap install flutter --classic
flutter doctor

How to use

Option 1: Create a new project
# Create an app
flutter_base_kit create my_app --template app

# Create a package
flutter_base_kit create my_package --template package

# Create a package with tester
flutter_base_kit create my_project --template package+tester
Option 2: Add to existing project
# Navigate to your project folder
cd my_existing_project

# Initialize Flutter Base Kit
flutter_base_kit init
Option 3: Add new modules to existing project
# Add a complete module (API → Service → Cubit → Page)
flutter_base_kit module --name user_store

What you get in the project

📁 Application structure
lib/
├── api/           # API and network requests
├── core/          # Core logic
├── di/            # Dependency injection
├── l10n/          # Localization (EN, ES)
├── models/        # Data models
├── routes/        # Navigation
├── services/      # Services
├── themes/        # Theming
├── ui/            # UI components
└── utils/         # Utilities
📁 Module structure (created with module command)
lib/
├── api/retrofit/{module_name}/     # API interface
├── services/api/{module_name}/     # Business logic
├── models/{module_name}/           # Data models
├── core/{module_name}/             # State management
└── ui/pages/app/pages/{module_name}/ # UI page
🛠️ Ready components
  • Routing - AutoRoute for navigation
  • DI - GetIt + Injectable for dependency management
  • API - Dio + Retrofit for server communication
  • State - Provider + Bloc for state management
  • Themes - Flexible theming with light/dark support
  • Localization - Support for English and Spanish languages
  • Code Generation - Freezed, JSON, routes are generated automatically
🧩 Module Generator
  • Complete Module Creation - Generate API → Service → Cubit → Page structure
  • Automatic Naming - Converts snake_case to PascalCase automatically
  • Build Runner Integration - Automatically runs code generation after module creation
🎨 UI Components
  • AppKitLoader - Global loading widget with customizable presets
  • AppDialog - Comprehensive dialog system
  • AppSnackBar - Enhanced snackbar with error, success, and info variants
  • AppBuilder - Reactive widget builder with built-in loading/error states

Command examples

# Create an app
flutter_base_kit create my_app --template app --org com.mycompany

# Create a package
flutter_base_kit create my_package --template package

# Create a monorepo (package + tester)
flutter_base_kit create my_library --template package+tester --org com.mycompany

# Add to existing project
flutter_base_kit init

# Add new module
flutter_base_kit module --name user_store

Next steps

After creating a project:

  1. Navigate to project folder:

    cd my_app
    
  2. Install dependencies:

    flutter pub get
    
  3. Generate code:

    flutter packages pub run build_runner build
    
  4. Run the app:

    flutter run
    

Useful commands

# Show help
flutter_base_kit --help

# Generate code (in project)
flutter packages pub run build_runner build --delete-conflicting-outputs

# Create a new module
flutter_base_kit module --name user_store

Template types

  • app - Full Flutter application with all components
  • package - Flutter package/plugin for code reuse
  • package+tester - Package + separate testing application

Command options

  • --org - Organization identifier (e.g., com.mycompany)
  • --template - Template type (app, package, package+tester)
  • --name - Module name (must be in lowercase or snake_case format, e.g., user, user_store, product_item)
  • --help - Show help

Module naming rules

Module name must be in lowercase or snake_case format (e.g., user, user_store, product_item)

Dependencies

Core Dependencies
  • flutter_bloc: State management
  • get_it: Dependency injection
  • injectable: Code generation for DI
  • auto_route: Declarative routing
  • dio: HTTP client
  • retrofit: Type-safe HTTP client
  • freezed: Immutable data classes
  • json_annotation: JSON serialization
  • flutter_localizations: Localization support
Development Dependencies
  • build_runner: Code generation
  • injectable_generator: DI code generation
  • auto_route_generator: Route code generation
  • retrofit_generator: Retrofit code generation
  • json_serializable: JSON code generation
  • freezed: Freezed code generation
  • flutter_gen_runner: Asset code generation

Configuration

Localization

Add ARB files to lib/l10n/:

  • app_en.arb - English translations
  • app_es.arb - Spanish translations

Troubleshooting

Code generation errors
# Clear cache and regenerate
flutter packages pub run build_runner clean
flutter packages pub run build_runner build --delete-conflicting-outputs

Support

Support the project

If you find this package helpful, consider supporting its development:

Buy Me A Coffee

Donate

License

MIT License - see LICENSE file

所屬分類

依賴

依賴清單 10 項

原始碼儲存庫

使用此套件的專案

暫無相關資料。