Terminal

Node Initializr CLI

Gere projetos Node.js direto do terminal. A CLI roda localmente na sua máquina, sem depender do servidor web. Mesmas opções, mesmo motor de geração.

Offline

Após instalar, funciona sem internet. Templates embutidos no pacote.

Interativo

Assistente com menus de seleção — escolha opção por opção no terminal.

Scriptável

Flags para CI/CD e automação. Gere projetos padronizados em pipelines.

Uso

npx @node-initializr/cli create

# Alias alternativo
npx create-node-app

Modo interativo

Execute create sem argumentos. O assistente pergunta o nome e guia você pelas opções com setas ↑↓ e Enter.

npx @node-initializr/cli create
  1. 1.Nome do projeto
  2. 2.Framework
  3. 3.Linguagem
  4. 4.Versão do Node.js
  5. 5.Package manager
  6. 6.Arquitetura
  7. 7.Banco de dados
  8. 8.ORM
  9. 9.Autenticação
  10. 10.Mensageria
  11. 11.Redis
  12. 12.Swagger, testes, Docker e GitHub Actions
  13. 13.Ferramentas de IA (AGENTS.md, Cursor, Claude, etc.)

Ao final, a CLI cria a pasta ./nome-do-projeto e mostra os próximos passos (cd, install, dev).

Comandos

create [nome]

Cria um novo projeto Node.js. Sem argumentos, abre o assistente interativo.

npx @node-initializr/cli create

options

Lista todas as opções disponíveis (frameworks, ORMs, bancos, etc.).

npx @node-initializr/cli options

Exemplos

Projeto NestJS com Prisma (modo direto)

npx @node-initializr/cli create my-api --yes \
  --framework nestjs \
  --database postgresql \
  --orm prisma \
  --auth jwt \
  --package-manager pnpm

Gerar .zip em vez de pasta

npx @node-initializr/cli create my-api --yes \
  --framework express \
  --architecture mvc \
  --output ./my-api.zip

Flags do comando create

FlagValores
--framework, -fnestjs, express, fastify
--language, -ltypescript, javascript
--node-version22, 20, 18
--package-managernpm, pnpm, yarn
--architecture, -amodular-monolith, clean, mvc
--databasepostgresql, mysql, mongodb, none
--ormprisma, typeorm, drizzle, sequelize, none
--authjwt, clerk, none
--message-brokerrabbitmq, bullmq, none
--redis / --no-redisboolean
--swagger / --no-swaggerboolean
--jest / --no-jestboolean
--docker / --no-dockerboolean
--github-actions / --no-github-actionsboolean
--output, -ocaminho do .zip (em vez de criar pasta)
--dirpasta de destino (padrão: ./<nome>)
--yes, -ypula o assistente; usa flags e defaults
--ai-toolsagents, cursor, claude, copilot, gemini, jetbrains, windsurf (vírgula)

Use --yes para pular o assistente e aplicar apenas as flags informadas. Combinações inválidas (ex.: Drizzle + MongoDB) são rejeitadas.

Web vs CLI

WebCLI
InterfaceFormulário visualTerminal interativo
Saída padrãoArquivo .zipPasta do projeto
Onde rodaNavegador + APISua máquina (offline)
Ideal paraExplorar opções visualmenteFluxo de dev e automação