flutter_runner_cli 1.0.9 copy "flutter_runner_cli: ^1.0.9" to clipboard
flutter_runner_cli: ^1.0.9 copied to clipboard

CLI interaktif untuk menjalankan Flutter app — pilih environment (Local/Dev/Prod), pilih device, lalu auto-run dengan dart-define yang sesuai. Cocok untuk developer yang sering gonta-ganti environment [...]

Flutter Runner CLI #

pub.dev package license Dart

CLI interaktif untuk menjalankan Flutter app — pilih environment (Local/Dev/Prod), pilih device, lalu auto-run dengan --dart-define yang sesuai.

Zero external dependencies — hanya pakai dart:io dan dart:convert.

Fitur #

  • 🎯 Pilih Environment — Local (auto-detect IP), Dev, atau Production
  • 📱 Pilih Device — Deteksi otomatis device dari flutter devices
  • Auto Runflutter run dengan --dart-define yang sesuai
  • 🔧 Config Wizard--init buat bikin .flutter_runner.json
  • 🏢 Multi-project — Bisa dipake di project Flutter mana aja
  • 📦 Zero dependencies — Ringan, gak perlu install library tambahan

Install #

# Aktifkan global
dart pub global activate flutter_runner_cli

# Jalankan dari mana aja
flutter-runner

Atau tanpa install:

dart run flutter_runner_cli

Usage #

flutter-runner            # Menu interaktif (pilih env → pilih device → run)
flutter-runner --init     # Buat/configurasi .flutter_runner.json
flutter-runner --help     # Bantuan

Alur Interaktif #

Step 1 — Pilih Environment:

╔══════════════════════════════════════════╗
║          Pilih Environment               ║
╚══════════════════════════════════════════╝

  1)  🏠  Local
      IP otomatis :8000

  2)  🔧  Dev
      https://staging.example.com

  3)  🌐  Production
      https://api.example.com

Step 2 — Pilih Device:

╔══════════════════════════════════════════╗
║          Pilih Device                    ║
╚══════════════════════════════════════════╝

  1) iPhone 17 Pro (65F7E385-...)
  2) Pixel 7 (emulator-5554)

Step 3 — Auto Run:

$ flutter run -d <device> --dart-define=BASE_URL=<url> ...

Config #

Bikin file .flutter_runner.json di root project:

flutter-runner --init

Atau buat manual:

{
  "local_port": "8000",
  "dev_url": "https://staging.example.com",
  "prod_url": "https://api.example.com",
  "extra_defines": {
    "APP_NAME": "MyApp",
    "API_KEY": "abc123"
  }
}

Field Config #

Field Wajib Deskripsi
local_port Port backend lokal (contoh: 8000)
dev_url URL backend development
prod_url URL backend production
extra_defines --dart-define tambahan (key-value)

Tanpa config file: flutter-runner akan error dan nyuruh bikin config pake --init.

Dart Define (Environment Variables untuk Aplikasi) #

Saat flutter run dijalankan, flutter-runner CLI mengirim --dart-define berikut:

Key Environment Deskripsi
BASE_URL All Base URL backend (Local/Dev/Production sesuai pilihan)
BACKEND_HOSTNAME Local IP host backend (untuk Local environment)
extra_defines All Key-value tambahan dari .flutter_runner.jsonextra_defines

Aplikasi Flutter harus membaca BASE_URL via String.fromEnvironment('BASE_URL'). Lihat contoh di Integration Guide.

Custom Run Script #

Jika .flutter_runner.json memiliki field run_script, CLI akan menjalankan script tersebut sebagai pengganti flutter run langsung. Script akan menerima environment variable berikut:

Variable Deskripsi
FLUTTER_EXECUTABLE Path ke Flutter executable (fvm atau flutter)
FLUTTER_DEVICE_ID ID device yang dipilih user
FLUTTER_DART_DEFINES Semua --dart-define args (space-separated)

Contoh script (scripts/run.sh):

#!/usr/bin/env bash
"$FLUTTER_EXECUTABLE" flutter run -d "$FLUTTER_DEVICE_ID" $FLUTTER_DART_DEFINES

Integration Guide #

Di project Flutter, baca BASE_URL dari --dart-define:

class ApiConfig {
  static String get baseUrl => const String.fromEnvironment(
    'BASE_URL',
    defaultValue: 'http://localhost:8080',
  );
}

Environment Variables (Override Config) #

Override config via environment variable:

FLUTTER_RUNNER_LOCAL_PORT=9000 flutter-runner
FLUTTER_RUNNER_DEV_URL=https://staging.example.com flutter-runner

Development #

git clone https://github.com/adibagasp23/flutter_runner_cli
cd flutter_runner_cli
dart run

Testing #

dart analyze   # Static analysis
dart format .  # Code formatting
dart run       # Manual testing

Publikasi #

dart pub publish

Lisensi #

MIT — lihat LICENSE.

0
likes
0
points
93
downloads

Publisher

verified publisherciptaantaradigital.com

Weekly Downloads

CLI interaktif untuk menjalankan Flutter app — pilih environment (Local/Dev/Prod), pilih device, lalu auto-run dengan dart-define yang sesuai. Cocok untuk developer yang sering gonta-ganti environment dan device.

Repository (GitHub)
View/report issues

Topics

#flutter #cli #devtools #environment #runner

Funding

Consider supporting this project:

github.com

License

unknown (license)

More

Packages that depend on flutter_runner_cli