Skip to main content

Command Reference

Este documento serve como a Single Source of Truth para cada comando CLI, script PNPM, comando de container e instrução de orquestração utilizados no monorepo tupynambalucas.dev.

Monorepo Orchestration​

Scripts usados para gerenciar dependências, limpeza e tarefas em todo o workspace.

  • pnpm install: Instala todas as dependências no monorepo.
  • pnpm install --frozen-lockfile: Instala dependências estritamente a partir de pnpm-lock.yaml (usado em CI/CD).
  • pnpm project:clear: Limpa todos os node_modules e caches de build usando npkill.

Dependency Management (Catalogs)​

Todas as novas dependências devem ser adicionadas a um catálogo (seja o catálogo padrão ou um específico) para garantir a consistência de versão em todo o monorepo.

Adicionando ao Workspace Raiz: Adicionar uma dependência ao package.json raiz requer a flag -w (ou --ignore-workspace-root-check).

  • pnpm add \<package> -w --save-catalog: Adiciona um pacote à raiz e salva sua versão no catálogo padrão.
  • pnpm add \<package> -w --save-catalog-name \<catalog_name>: Adiciona um pacote à raiz e salva sua versão em um catálogo específico.

Adicionando a um Workspace Específico: Use a flag --filter para direcionar um pacote de workspace específico.

  • pnpm add \<package> --filter \<workspace> --save-catalog: Adiciona um pacote a um workspace e salva sua versão no catálogo padrão.
  • pnpm add \<package> --filter \<workspace> --save-catalog-name \<catalog_name>: Adiciona um pacote a um workspace e salva sua versão em um catálogo específico.

Usando um Pacote Catalogado Existente:

  • pnpm add \<package>@catalog: --filter \<workspace>: Instala em um workspace específico um pacote que já está definido no catálogo padrão.

Validation & Quality​

Scripts para garantir a qualidade do código e a segurança de tipos.

  • pnpm typecheck: Executa a validação paralela do TypeScript em todos os workspaces via Turborepo.
  • pnpm lint: Executa a validação do ESLint em todos os workspaces.
  • pnpm build: Compila um build de produção para todas as aplicações e pacotes.
  • pnpm format:check: Verifica a formatação em todo o monorepo.
  • pnpm format:write: Corrige automaticamente problemas de formatação em todos os arquivos.

Kubernetes Cluster Management (Minikube)​

Comandos para controlar o cluster Kubernetes de desenvolvimento local.

  • pnpm minikube:up: Inicia o cluster Minikube local usando o driver Podman e configura a montagem automática do diretório do projeto.
  • pnpm minikube:tunnel: Inicia o túnel de rede do Minikube para resolver alocações de IP de LoadBalancer.
  • pnpm minikube:status: Verifica o status do cluster Minikube local.
  • pnpm minikube:mount: Monta o diretório do workspace do projeto no nó do Minikube.

Kubernetes Deployments (Skaffold)​

Comandos para compilar, fazer deploy e recarregar componentes a quente (hot-reload) dentro do cluster Kubernetes. Todas as cargas de trabalho são orquestradas através do workspace de infraestrutura central.

  • pnpm infra:dev: Faz o deploy de toda a pilha (cortex, platform, studio, hub) para o cluster com o recarregamento a quente (hot-reloading) em tempo real ativado.
  • pnpm infra:up: Executa uma compilação e um deploy únicos de toda a pilha para o cluster sem monitoramento contínuo.
  • pnpm infra:clean: Exclui todos os recursos em deploy do cluster e limpa o cache do Skaffold.
  • pnpm infra:platform:dev: Faz o deploy apenas dos serviços de plataforma com recarregamento a quente.
  • pnpm infra:cortex:dev: Faz o deploy dos serviços de Platform + Cortex AI para o cluster com recarregamento a quente.
  • pnpm infra:studio:dev: Faz o deploy das ferramentas Platform + Studio (Penpot, Memos) para o cluster com recarregamento a quente.

Developer Hub​

Comandos para o contexto delimitado do Developer Hub (hub/).

  • pnpm hub:dev: Inicia os servidores de desenvolvimento local (API na porta 3006 e Web na porta 5173).
  • pnpm hub:build: Compila os builds de produção para a API e a Web.

Renderer​

Comandos para geração de assets e renderização.

  • pnpm renderer:clean: Limpa os assets compilados dentro do workspace do renderizador.
  • pnpm renderer:generate: Recompila os componentes dinâmicos do renderizador e os templates de README.

Documentation​

Comandos para a Base de Conhecimento do Docusaurus (docs/).

  • pnpm docs:dev: Inicia o servidor de desenvolvimento do Docusaurus em inglês local (porta 3002) com HMR.
  • pnpm docs:dev:pt: Inicia o servidor do Docusaurus em português brasileiro (pt-BR).
  • pnpm docs:build: Compila a documentação em HTML/CSS estático para produção.
  • pnpm docs:preview: Compila e serve uma pré-visualização de produção da documentação.
  • pnpm docs:down: Encerra à força a porta do servidor web de documentação.

Git & Version Control​

Workflows para criação de branches, commits e releases.

  • git flow feature start \<name>: Inicia uma nova feature branch a partir de develop.
  • git push -u origin feature/\<name>: Envia uma feature branch para o repositório remoto.
  • gh pr create --base develop --fill --web: Cria um Pull Request direcionado à branch develop.
  • gh pr merge --squash --delete-branch: Mescla um PR usando a estratégia de squash-and-merge.
  • git flow hotfix start \<name> / git flow hotfix finish \<name>: Gerencia correções emergenciais na branch main.
  • pnpm version:changeset: Gera um arquivo de changeset para rastrear alterações de versão e changelogs.
  • pnpm version:bump: Incrementa a versão dos pacotes com base nos changesets.
  • pnpm version:publish: Publica todos os pacotes atualizados nos registries.