Finch CLI

De Finch CLI is een opdrachtregeltool voor het aanmaken van projecten, het uitvoeren van de ontwikkelserver, het bouwen, het uitvoeren van tests en het beheren van databasemigraties. Het omhult veelgebruikte Dart-opdrachten en voegt Finch-specifieke taken toe.

Installatie

dart pub global activate finch

Opdrachten

Voer finch -h uit om alle beschikbare opdrachten te zien:

finch -h
✔ templates
        Show the list of available templates
✔ create
        Make new project
        -p, --path       Path of the project
        -n, --name       Name of project
        -d, --docker     Use docker
        -t, --template   Project template [simple, example,...]
✔ get
        Get packages of project, (dart pub get)
✔ runner
        Build runner of project, (dart pub run build_runner build)
✔ run
        Run project, (dart run)
        -p, --path       Path of app file
        -a, --args       Arguments for app file
✔ serve
        Serve project with file watcher
        -p, --path       Path of app file
        -a, --args       Arguments for app file
✔ build
        Build Project (dart compile exe)
        -c, --cli        Build for cli
        -a, --appPath    Path of app file
        -l, --langPath   Languages path
        -p, --publicPath Public path
        -w, --widgetPath Widgets path
        -e, --envPath    Envitoment file (.env) path
        -o, --output     Output path
        -t, --type       Type of build (zip, exe)
✔ migrate
        Migrate project to new version of Finch
        -c, --create     Create new project and move files
        -n, --name       Name of migration file (only for create option)
        -s, --sqlite     Migrate SQLite files
✔ test
        Unit test of project, (dart test)
        -r, --reporter   Set how to print test results
✔ make:controller
        Make new controller
        -n, --name       Name of controller
        -p, --path       Path of controller (default: ./lib/controllers/)
✔ make:service
        Make new service
        -n, --name       Name of service
        -p, --path       Path of service (default: ./lib/services/)
✔ make:middleware
        Make new middleware
        -n, --name       Name of middleware
        -p, --path       Path of middleware (default: ./lib/middleware/)

        -h, --help       Show the help
        -v, --version    Finch Version
        -u, --update     Update Finch

Veelgebruikte voorbeelden

Een nieuw project aanmaken met het example-sjabloon

finch create -n my_app -t example

De ontwikkelserver starten met bestandswatcher

Het serve-commando bewaakt widget- en taalbestanden en herlaadt ze automatisch zonder de server opnieuw te starten:

finch serve

Of geef het beginpunt op:

finch serve -p lib/serve.dart

Een productiebinary bouwen

finch build -a lib/app.dart -o ./build/app

Databasemigraties uitvoeren

# Alle openstaande MySQL-migraties toepassen
finch migrate --init

# Een nieuw MySQL-migratiebestand aanmaken
finch migrate --create --name add_users_table

# SQLite-migraties toepassen
finch migrate --init --sqlite

Het migrate-commando delegeert naar het ingebouwde migratiesysteem van de draaiende app. Zie Database Migration voor details.