magickit_cli
MagicKit CLI - development tools & code generator untuk Flutter.
Install
Aktifkan secara global:
dart pub global activate magickit_cli
Untuk development dari monorepo:
dart pub global activate --source path packages/magickit_cli
Usage
magickit <command> [arguments]
magickit <command> --help
Commands
doctor
Cek environment (Flutter/Dart), dependency, dan konfigurasi.
magickit doctor
init
Generate magickit.yaml dan struktur folder project.
magickit init
page
Generate page + routing di dalam feature.
magickit page <feature> <page>
magickit page auth login --path-params id
magickit page product detail --query-params sort,rating
Options:
--path-paramsparameter path (comma-separated)--query-paramsparameter query (comma-separated)
api
Generate full-stack feature code dari folder remote/.
magickit api
magickit api <feature>
magickit api <feature> <page>
magickit api --force --verbose
Options:
--forceoverwrite file yang sudah ada--dry-runsimulasi tanpa menulis file--verbosedetail resolusi (ref/type)
assets
Scan assets/ dan generate MagicAssets.
magickit assets
Konfigurasi lewat magickit.yaml:
assets.inputassets.outputassets.excludeassets.groupassets.strip_prefix
l10n
Scan assets/l10n/ dan generate AppLocalizations.
magickit l10n
Konfigurasi lewat magickit.yaml:
l10n.inputl10n.outputl10n.default_locale
component
Scaffold komponen baru mengikuti MagicKit convention.
magickit component rating_star --type atom
magickit component card_promo --type molecule --output lib/core/components/src
Options:
--type(atom|molecule|organism) wajib--outputbase output directory--packagenama package untuk ThemeExtension (defaultmagickit)
registry
Scan annotations dan generate registry + AI bundle.
magickit registry
magickit registry --source lib/ --output lib/src/registry/
magickit registry --no-ai-bundle
Options:
--sourcedirektori source code--outputdirektori output--ai-bundle(default on), pakai--no-ai-bundleuntuk disable
registry
Scan annotations dan generate registry + AI context bundle.
magickit registry
magickit registry --source lib/ --output lib/src/registry/
magickit registry --no-ai-bundle
Options:
--sourcedirektori source code--outputdirektori output--ai-bundle(default on), pakai--no-ai-bundleuntuk disable
Output:
component_registry.yaml— machine-readable component listai_context_bundle.md— AI context dengan constructor signatures, types, dan tags
slicing
Konversi gambar/Figma menjadi Flutter code via AI.
# Generate prompt file untuk upload manual ke AI
magickit slicing prompt "slicing ui home page"
magickit slicing prompt "slicing ui login form"
# Direct ke AI dari gambar
magickit slicing image --source ui.png
magickit slicing image --source ui.png --provider gemini
# Direct ke AI dari Figma MCP selection
magickit slicing figma --selection selection.json
magickit slicing figma --selection selection.json --provider anthropic
Subcommands:
| Command | Deskripsi |
|---|---|
slicing prompt <task> |
Generate .md prompt file — tinggal upload gambar + copy-paste ke AI |
slicing image |
Direct ke AI dari gambar UI |
slicing figma |
Direct ke AI dari Figma MCP selection JSON |
Options (semua subcommand):
--provider(anthropic|gemini) — override default darimagickit.yaml--sourcepath gambar (untukimagesubcommand)--selectionpath JSON selection (untukfigmasubcommand)--[no-]package-componentsgunakan bundle komponen dari package magickit (default on)
Cara pakai slicing prompt:
- Jalankan
magickit registrydi project - Jalankan
magickit slicing prompt "deskripsi task" - Buka Claude/Codex desktop
- Upload gambar ke AI
- Copy-paste isi file
.mdyang di-generate - AI akan generate Flutter code
Butuh API key (untuk image dan figma subcommands):
ANTHROPIC_API_KEYatauGEMINI_API_KEYFIGMA_API_KEYbila pakai Figma
kickstart
Generate starter app (splash, onboarding, login, main navigation).
magickit kickstart
version
Lihat versi CLI dan UI Kit.
magickit version
magickit version --update
--update akan meng-update magickit_cli ke versi terbaru dari pub.dev.
Contributing
Silakan buat issue atau pull request di repository.