StackPronta
A StackPronta organiza o ambiente de desenvolvimento local dentro do VS
Code, permitindo preparar e controlar bancos de dados, filas, ferramentas,
infraestrutura Docker e outros recursos por meio de perfis e comandos
reais — sem preparar nada manualmente a cada novo projeto.

O que é a StackPronta?
A StackPronta transforma o VS Code em um painel de controle do seu
ambiente de desenvolvimento local: bancos de dados, filas, mocks, e-mail
de teste, observabilidade, geração de projetos e diagramas ficam
disponíveis como perfis, controlados por uma extensão que só dispara
comandos reais — nunca reimplementa essa lógica por conta própria.
Os 4 pilares da StackPronta
🧱 1. Infraestrutura local
Suba bancos de dados, filas, mocks e ferramentas auxiliares como perfis
Docker, sem preparar nada manualmente:
- Bancos de dados: PostgreSQL, MySQL/MariaDB, SQL Server, Oracle, MongoDB, Redis, Elasticsearch/OpenSearch
- Filas: RabbitMQ, Kafka
- Testes: Mailpit (e-mail), mocks (WireMock, Toxiproxy)
- Observabilidade: Grafana, Prometheus
- Containers externos: suas próprias imagens Docker, já na mesma rede
🚀 2. Criar e desenvolver
Comece um projeto novo ou acelere um já existente:
- Criação de projetos a partir de templates (.NET, Java)
- Scaffolding e geração de CRUD com um clique
- Configuração e troca de banco de dados do projeto
📐 3. Analisar e modelar
Documente arquitetura e fluxos sem sair do editor:
- Diagramas as-code: PlantUML, Mermaid, BPMN
- Excalidraw e draw.io
- Preview direto no VS Code
🔐 4. Qualidade e CI/CD
Valide código e organize a esteira antes de qualquer entrega:
- CI/CD com Jenkins e SonarQube
- Geração de SBOM e análise de dependências
- Verificações de segurança (DAST)
Como funciona
Escolha ou crie seu projeto
│
Prepare sua stack (escolha os perfis)
│
Suba o ambiente
│
Comece a desenvolver
Cada ação é executada por comandos reais, num terminal integrado sempre
visível — você sempre vê exatamente o que está sendo executado, nunca uma
caixa preta.
Free × Pro
Instalar e usar a extensão é grátis.
| Recurso |
Free |
Pro |
| Bancos de dados e admin UIs |
✓ |
✓ |
| Verificação de ambiente / status bar |
✓ |
✓ |
Edição de .env / overlay local, modo eco/lite |
✓ |
✓ |
| Filas (RabbitMQ, Kafka) |
— |
✓ |
| Mocks/Testes (WireMock, Toxiproxy) |
— |
✓ |
| IA local (Ollama) |
— |
✓ |
| Qualidade e CI/CD (Jenkins, SonarQube) |
— |
✓ |
| Observabilidade (Grafana, Prometheus) |
— |
✓ |
| E-mail de teste (Mailpit) |
— |
✓ |
| Containers externos |
— |
✓ |
| Novo projeto / scaffolding / CRUD |
— |
✓ |
| Diagramas as-code |
— |
✓ |
O Pro é uma assinatura, com período de teste gratuito. Preços e condições
atuais estão em stackpronta.dev.
A StackPronta funciona inteira sem IA: bancos, filas, diagramas, CI/CD e
os demais recursos não dependem de um assistente de IA para funcionar.
No plano Pro existe também um perfil de IA local (Ollama), para quem
quiser rodar modelos sem depender de serviços externos. A IA pode
acelerar o trabalho, mas não é um requisito para usar a StackPronta.
⚠️ Desenvolvimento local — não é para produção
A StackPronta é destinada a ambientes de desenvolvimento e laboratório
local. Não é uma ferramenta para infraestrutura de produção.
Por que StackPronta?
- Ambiente completo dentro do VS Code — sem alternar para outro painel ou
ferramenta externa.
- Terminal integrado sempre visível: você vê o comando real sendo
executado, nunca uma abstração escondida.
- Funciona com ou sem IA.
- Vários bancos, filas e ferramentas coexistindo no mesmo ambiente,
isolados por projeto.
- O plano Free já permite montar e gerenciar um ambiente local de
desenvolvimento de verdade.
Começando
Requisitos
- Docker (Desktop no Windows/Mac, ou Engine no Linux) — em execução,
não só instalado.
- Docker Compose v2 (plugin
docker compose).
- Bash — no Windows, rode o VS Code a partir do WSL.
A extensão verifica esses três requisitos sozinha ao abrir (ou via
"StackPronta: Verificar ambiente" na paleta de comandos) e indica
exatamente o que falta e como resolver.
Instalação
Busque por StackPronta na aba de Extensions do VS Code, ou pelo Quick
Open (Ctrl+P):
ext install stackpronta.stackpronta
Primeiros passos
Guia completo: stackpronta.dev/docs/primeiros-passos
Documentação
Documentação completa: stackpronta.dev/docs
Suporte
Encontrou um problema ou tem uma sugestão? Use o comando StackPronta:
Suporte / relatar um problema na paleta de comandos, escreva para
suporte@stackpronta.dev, ou acesse
stackpronta.dev/suporte.
Site
stackpronta.dev
Detalhes técnicos
Como a extensão funciona
A extensão é uma camada fina sobre o CLI core/infra/stack: ela lê o
estado real (./stack list, docker ps, .stack-profiles) e dispara os
comandos num terminal integrado visível — nunca reimplementa a lógica da
stack por conta própria. Qualquer coisa que a extensão faz também pode
ser feita manualmente pelo terminal.
- Visão lateral "StackPronta" (ícone de camadas na activity bar):
- Projeto atual: detectado via
.stack-profiles na workspace, com
botões inline de up-project / down.
- Grupo "Infra/Ops": Bancos (Relacionais / NoSQL / Admin UIs) / Filas
/ Mocks-Testes / IA local / Email / Esteira (CI/CD) / Observabilidade
/ Containers externos — perfis do
./stack list, com estado real
(● rodando / ○ parado) e portas publicadas.
- Ações inline por perfil: subir/desligar; nos perfis de banco, menu
de contexto com
create-db (validação snake_case) e seed.
- Grupo "Configuração" (topo da árvore): subpasta "Ambiente" abre
core/infra/.env e o overlay local
(core/infra/compose/override.local.yml); subpasta "Licença" reúne
ativar/ver/desativar a licença Pro.
- Comandos na paleta (
Ctrl+Shift+P → "StackPronta"): subir/desligar
múltiplos perfis, criar banco, seed, status no terminal.
- Status bar:
stack: N ativos, com refresh automático configurável —
vira um alerta clicável (⚠ ambiente incompleto) quando Docker/Compose/
Bash não passam na checagem.
Requisitos — detalhes de diagnóstico
docker ps falhando com failed to connect to the docker API at unix:///var/run/docker.sock ... no such file or directory significa que
o daemon do Docker não está no ar (Docker Desktop fechado, ou serviço
parado no Linux) — é a causa mais comum de "a árvore mostra tudo parado".
O diagnóstico da extensão diferencia isso de "Docker não instalado" e de
"integração com esta distro WSL desligada no Docker Desktop", com um
botão que abre o guia oficial certo para cada caso.
Containers externos (Pro)
Roda qualquer imagem Docker sua (Traefik, Nginx, Keycloak, MinIO, o que
for) já conectada à rede da stack (stackpronta_network) — enxerga e é
enxergada pelos demais containers pelo nome. Fora do controle do
./stack.
- A configuração de cada container é um YAML em
.stackpronta/containers/<nome>.yml — essa é a fonte de verdade:
editar o arquivo e rodar "Aplicar configuração" recria o container
Docker para bater com o que está escrito.
- Modo simples ("Rodar novo container externo..."): pergunta imagem e
portas, grava o YAML e já aplica.
- Modo avançado ("Configuração avançada (YAML)..."): abre o YAML
direto, com todos os campos documentados em comentário —
environment, volumes, command/entrypoint, network, restart,
labels, dns, hostname, healthcheck_cmd e os avançados
privileged, cap_add, pid/ipc/uts, devices. Nenhum desses
campos é validado ou bloqueado — a StackPronta não faz sandboxing da
imagem nem finge proteger o usuário do próprio Docker; os comentários do
próprio arquivo avisam o que cada campo implica. Use apenas em
containers/imagens de confiança.
- Portabilidade e Git: o YAML é determinístico e autocontido — dá para
versionar
.stackpronta/containers/*.yml junto do projeto, desde que a
imagem seja pública/acessível e nenhum campo dependa de um caminho
específico da sua máquina.
- Secrets: nunca escreva senha/token/API key direto no YAML se ele for
pro Git. Qualquer campo aceita
${NOME_DA_VAR}, resolvido só no momento
de aplicar (nunca gravado de volta no arquivo) — primeiro no ambiente do
processo/terminal, depois num arquivo
.stackpronta/containers/<nome>.env, que já cai na regra genérica
*.env do .gitignore da raiz do repo. Se alguma variável referenciada
não for encontrada, o "Aplicar" é bloqueado com uma mensagem clara antes
de tocar no Docker.
- Três estados na árvore: aplicado, pendente (YAML criado/editado,
ainda não aplicado) e órfão (container Docker com o label mas sem
YAML). Um ⚠️ na árvore indica configuração com
privileged/cap_add/pid: host/network: host/docker.sock
montado.
- "Aplicar" nunca destrói o container atual antes de validar o novo: a
nova configuração é testada (
docker create) sob um nome temporário
primeiro; só se funcionar o container antigo é removido.
- Segurança: containers externos são executados pelo Docker local do
usuário. A StackPronta não realiza sandboxing da imagem. Utilize
somente imagens e configurações em que você confia.
Novo projeto (Pro) — detalhes
Cria um projeto a partir dos templates disponíveis — hoje: templates .NET
(MVC simples; MVC + CRUD em três variantes de arquitetura — Clean,
modular por feature, Vertical Slice; Web API; Worker; Console; Integração
entre sistemas) e um template Java EE + CRUD em Clean Architecture
(Jakarta EE/JAX-RS/CDI/JPA).
Quando o template inclui CRUD e você escolhe um banco, o plano de
execução também cria o banco isolado do projeto (create-db) e, para o
template Java (que não migra schema no boot), um passo extra de "Criar
schema inicial" — exceto Oracle, por limitação conhecida de isolamento
por schema (documentada no README do template).
O comando StackPronta: Adicionar CRUD (add-crud) (Pro) permite gerar
um novo cadastro dentro de um projeto já criado pela StackPronta.
Configurações
stackpronta.raizRepo: caminho do repositório (vazio = detecção
automática pela workspace ou, em modo dev, pela pasta pai da extensão).
stackpronta.intervaloAtualizacaoSegundos: intervalo do refresh
automático do estado dos containers (padrão 20s; 0 desliga).