Spraxium logoSpraxium

Criando um Projeto

O comando spraxium new cria um projeto Spraxium completo a partir de um template. Entenda como o assistente interativo funciona, quais templates estão disponíveis e o que é instalado.

O que ele faz

spraxium new cria um novo diretório de projeto do zero. Ele executa um assistente interativo que coleta o nome do projeto, o template, pacotes extras opcionais e a preferência de Git. Quando o assistente termina, a CLI monta o diretório, instala todas as dependências e, se você quiser, inicializa um repositório Git. No fim, você fica com um projeto funcional, pronto para spraxium dev.

Rode o comando em qualquer diretório fora do seu projeto atual. Você também pode passar o nome do projeto diretamente como argumento para pular a primeira pergunta.

terminal
spraxium new
spraxium new my-bot
# alias:
spraxium n my-bot

O principal benefício de usar o assistente em vez de criar os arquivos manualmente é a consistência. Você já começa com a estrutura de pastas, o conjunto de pacotes, a configuração de TypeScript e a integração com o framework do jeito que o Spraxium espera, o que reduz retrabalho mais adiante.

O que o assistente pergunta

Nome do projeto

Você pode digitar o nome interativamente ou passá-lo pela linha de comando. A CLI usa esse nome para o diretório e para os metadados do pacote.

Template

Escolha o ponto de partida mais próximo do bot que você quer construir. Essa escolha define quais arquivos e pacotes entram carregados desde o início.

Pacotes opcionais

No template default, o assistente permite selecionar pacotes extras do framework para que a instalação inicial combine com o seu caso de uso.

Inicialização do Git

Decida se a CLI deve inicializar um repositório Git imediatamente. Isso é conveniente em projetos novos, mas continua sendo opcional.

Templates disponíveis

Há três templates disponíveis. Cada um representa uma configuração inicial diferente, e o assistente deixa você escolher entre eles antes de gerar o projeto.

Escolha o menor template que ainda combine com o formato de projeto que você já sabe que vai precisar. É mais fácil adicionar um pacote depois do que carregar partes sem uso desde o primeiro dia.

Pacotes opcionais

Quando você escolhe o template default, o assistente mostra um prompt com caixas de seleção onde é possível escolher qualquer combinação dos pacotes extras abaixo. Os templates não padrão usam um conjunto fixo.

Na maioria dos casos, vale começar enxuto e adicionar pacotes quando o primeiro caso de uso real aparecer. Para times experientes, com uma arquitetura bem definida, selecionar os pacotes certos logo de início reduz a primeira rodada de ajustes.

O que o assistente instala

A CLI sempre instala um conjunto fixo de pacotes centrais, independentemente do template: @spraxium/common, @spraxium/core, @spraxium/env e discord.js. Entre as dependências de desenvolvimento entram @spraxium/cli, typescript, @types/node e tsdown.

Quaisquer pacotes extras que você selecionar entram na mesma rodada de instalação. O instalador detecta se você está em um monorepo e resolve referências locais de workspace quando isso faz sentido. Se nenhum gerenciador de pacotes for detectado, a CLI assume pnpm por padrão.

O que você recebe assim que a geração termina

Quando o comando termina, o essencial já está pronto:

  1. Um diretório de projeto funcional.
  2. Uma pasta src pronta para edição com os arquivos iniciais do template.
  3. Um arquivo spraxium.config.ts alinhado ao setup escolhido.
  4. Dependências instaladas.
  5. Um repositório Git opcional, se você tiver habilitado isso.

Isso já basta para seguir direto para a configuração do ambiente e para spraxium dev, sem uma etapa manual separada de bootstrap.

O diretório não pode existir

Se já existir um diretório com o nome do projeto no caminho atual, o comando para imediatamente sem gravar nenhum arquivo. Renomeie ou remova o diretório em conflito antes de rodar o assistente de novo.

Próximos passos recomendados

Depois da geração, a sequência mais comum é:

  1. Preencher as variáveis de ambiente.
  2. Rodar spraxium dev uma vez para confirmar que a aplicação inicia.
  3. Usar spraxium generate para adicionar o primeiro módulo, serviço ou comando real.

Isso mantém o projeto avançando em passos pequenos e verificáveis, em vez de acumular muito código antes do primeiro boot bem-sucedido.