Finch CLI
Finch CLI یک ابزار خط فرمان برای ساخت پروژه، اجرای سرور توسعه، ساخت، اجرای تستها، و مدیریت مهاجرت دیتابیس است. دستورات رایج دارت را پوشش میدهد و وظایف مختص فینچ را نیز اضافه میکند.
نصب
dart pub global activate finch
دستورات
برای مشاهده تمام دستورات موجود finch -h را اجرا کنید:
finch -h
✔ templates
نمایش لیست قالبهای موجود
✔ create
ساخت پروژه جدید
-p, --path مسیر پروژه
-n, --name نام پروژه
-d, --docker استفاده از docker
-t, --template قالب پروژه [simple, example,...]
✔ get
دریافت پکیجهای پروژه (dart pub get)
✔ runner
اجرای build runner پروژه (dart pub run build_runner build)
✔ run
اجرای پروژه (dart run)
-p, --path مسیر فایل app
-a, --args آرگومانهای فایل app
✔ serve
سرویس پروژه با file watcher
-p, --path مسیر فایل app
-a, --args آرگومانهای فایل app
✔ build
ساخت پروژه (dart compile exe)
-c, --cli ساخت برای CLI
-a, --appPath مسیر فایل app
-l, --langPath مسیر فایلهای زبان
-p, --publicPath مسیر عمومی
-w, --widgetPath مسیر widget
-e, --envPath مسیر فایل محیطی (.env)
-o, --output مسیر خروجی
-t, --type نوع ساخت (zip, exe)
✔ migrate
مدیریت مهاجرتهای MySQL و SQLite
-c, --create ساخت فایل مهاجرت جدید
-n, --name نام فایل مهاجرت (فقط با --create)
-s, --sqlite هدف قرار دادن SQLite به جای MySQL
✔ test
اجرای unit testها (dart test)
-r, --reporter تنظیم نحوه نمایش نتایج تست
-h, --help نمایش راهنما
-v, --version نمایش نسخه فینچ
-u, --update بروزرسانی Finch CLI
مثالهای رایج
ساخت پروژه جدید با قالب example
finch create -n my_app -t example
اجرای سرور توسعه با file watcher
دستور serve فایلهای widget و زبان را رصد میکند و آنها را بدون راهاندازی مجدد سرور بارگذاری میکند:
finch serve
یا با تعیین نقطه ورود:
finch serve -p lib/serve.dart
ساخت باینری برای محیط production
finch build -a lib/app.dart -o ./build/app
اجرای مهاجرت دیتابیس
# اعمال تمام مهاجرتهای MySQL معلق
finch migrate --init
# ساخت فایل مهاجرت MySQL جدید
finch migrate --create --name add_users_table
# اعمال مهاجرتهای SQLite
finch migrate --init --sqlite
دستور
migrateبه سیستم مهاجرت داخلی app در حال اجرا واگذار میشود. برای جزئیات بیشتر به Database Migration مراجعه کنید.