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-params parameter path (comma-separated)
  • --query-params parameter 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:

  • --force overwrite file yang sudah ada
  • --dry-run simulasi tanpa menulis file
  • --verbose detail resolusi (ref/type)

assets

Scan assets/ dan generate MagicAssets.

magickit assets

Konfigurasi lewat magickit.yaml:

  • assets.input
  • assets.output
  • assets.exclude
  • assets.group
  • assets.strip_prefix

l10n

Scan assets/l10n/ dan generate AppLocalizations.

magickit l10n

Konfigurasi lewat magickit.yaml:

  • l10n.input
  • l10n.output
  • l10n.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
  • --output base output directory
  • --package nama package untuk ThemeExtension (default magickit)

registry

Scan annotations dan generate registry + AI bundle.

magickit registry
magickit registry --source lib/ --output lib/src/registry/
magickit registry --no-ai-bundle

Options:

  • --source direktori source code
  • --output direktori output
  • --ai-bundle (default on), pakai --no-ai-bundle untuk 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:

  • --source direktori source code
  • --output direktori output
  • --ai-bundle (default on), pakai --no-ai-bundle untuk disable

Output:

  • component_registry.yaml — machine-readable component list
  • ai_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 dari magickit.yaml
  • --source path gambar (untuk image subcommand)
  • --selection path JSON selection (untuk figma subcommand)
  • --[no-]package-components gunakan bundle komponen dari package magickit (default on)

Cara pakai slicing prompt:

  1. Jalankan magickit registry di project
  2. Jalankan magickit slicing prompt "deskripsi task"
  3. Buka Claude/Codex desktop
  4. Upload gambar ke AI
  5. Copy-paste isi file .md yang di-generate
  6. AI akan generate Flutter code

Butuh API key (untuk image dan figma subcommands):

  • ANTHROPIC_API_KEY atau GEMINI_API_KEY
  • FIGMA_API_KEY bila 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.

Libraries

magickit_cli