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-appModo 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.Nome do projeto
- 2.Framework
- 3.Linguagem
- 4.Versão do Node.js
- 5.Package manager
- 6.Arquitetura
- 7.Banco de dados
- 8.ORM
- 9.Autenticação
- 10.Mensageria
- 11.Redis
- 12.Swagger, testes, Docker e GitHub Actions
- 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 createoptions
Lista todas as opções disponíveis (frameworks, ORMs, bancos, etc.).
npx @node-initializr/cli optionsExemplos
Projeto NestJS com Prisma (modo direto)
npx @node-initializr/cli create my-api --yes \
--framework nestjs \
--database postgresql \
--orm prisma \
--auth jwt \
--package-manager pnpmGerar .zip em vez de pasta
npx @node-initializr/cli create my-api --yes \
--framework express \
--architecture mvc \
--output ./my-api.zipFlags do comando create
| Flag | Valores |
|---|---|
| --framework, -f | nestjs, express, fastify |
| --language, -l | typescript, javascript |
| --node-version | 22, 20, 18 |
| --package-manager | npm, pnpm, yarn |
| --architecture, -a | modular-monolith, clean, mvc |
| --database | postgresql, mysql, mongodb, none |
| --orm | prisma, typeorm, drizzle, sequelize, none |
| --auth | jwt, clerk, none |
| --message-broker | rabbitmq, bullmq, none |
| --redis / --no-redis | boolean |
| --swagger / --no-swagger | boolean |
| --jest / --no-jest | boolean |
| --docker / --no-docker | boolean |
| --github-actions / --no-github-actions | boolean |
| --output, -o | caminho do .zip (em vez de criar pasta) |
| --dir | pasta de destino (padrão: ./<nome>) |
| --yes, -y | pula o assistente; usa flags e defaults |
| --ai-tools | agents, 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
| Web | CLI | |
|---|---|---|
| Interface | Formulário visual | Terminal interativo |
| Saída padrão | Arquivo .zip | Pasta do projeto |
| Onde roda | Navegador + API | Sua máquina (offline) |
| Ideal para | Explorar opções visualmente | Fluxo de dev e automação |