Development › CLI Reference

CLI reference

npx nestlaravel <command> [options]        # no install needed
npm i -D nestlaravel                       # or per-project (create adds it for you)
CommandWhat it does
create <name>New workspace. --db sqlite|pgsql|mysql, --with-portals, --migrate, --skip-install, --skip-git, --skip-validate, -y
generate service <name>New Laravel microservice (see MICROSERVICES.md). --port N, --force, --skip-install
generate kafka-event <type>Domain event class (+ --consumer handler). --service <svc> (use api for the gateway)
generate kafka-topic <name>Registers a topic in config/kafka.php and .env.example. --service <svc>, --create (creates it + .dlq on the dev broker)
add tenancyInstalls the multi-tenancy package (MULTI-TENANCY.md). --service a,b
devStarts Kafka/Postgres/Redis (Docker) then serves all apps via Nx. --no-infra, --docker (full containerised stack)
test / lintnx run-many -t test|lint. --affected, --project <name>, extra Nx args after --
buildProduction Docker images via Nx. --tag 1.2.3, --registry ghcr.io/acme
doctorVerifies Node, npm, PHP (+ extensions), Composer, Git, Docker, php-rdkafka
updateSafe upgrade of an existing workspace. --dry-run, --adopt, --allow-major, -y

Aliases: new=create, g/gen=generate, serve=dev, upgrade=update. Equivalent Nx usage works everywhere: npx nx test orders-service, npx nx serve api, npx nx graph.

#Examples

npx nestlaravel create shop --db pgsql --migrate
cd shop
npx nestlaravel generate service orders
npx nestlaravel generate service payments --port 8055
npx nestlaravel generate kafka-topic order-events --service orders --create
npx nestlaravel generate kafka-event order.created --service orders --consumer
npx nestlaravel test --affected
IMAGE_TAG=1.0.0 npx nestlaravel build --registry ghcr.io/acme

#Exit codes and safety

#Environment variables

VariableEffect
NO_COLORdisable colours
NESTLARAVEL_DEBUG=1print stack traces
IMAGE_TAG, REGISTRYimage name for build (or --tag/--registry)
NESTLARAVEL_CLI_SPEC(testing) devDependency spec written into new projects, e.g. file:./nestlaravel.tgz
Edit this page on GitHub