Comandos mais usados no dia a dia de desenvolvimento do Evolution GO.
# Ver todos os comandos disponíveis
make help
# Rodar em modo desenvolvimento
make dev
# Rodar com hot reload (recarrega automaticamente ao salvar)
make watch# Compilar a aplicação
make build
# Compilar para todas as plataformas (Linux, Windows, macOS)
make build-all
# Instalar no GOPATH
make install# Rodar todos os testes
make test
# Rodar testes com relatório de cobertura
make test-coverage
# Rodar testes com verificação de race conditions
make test-race
# Rodar benchmarks
make bench# Formatar código
make fmt
# Executar linter
make lint
# Executar go vet
make vet
# Executar todas as verificações (fmt + vet + lint + test)
make check# Build da imagem Docker
make docker-build
# Rodar container Docker
make docker-run
# Iniciar todos os serviços com docker-compose
make docker-compose-up
# Parar todos os serviços
make docker-compose-down
# Ver logs do docker-compose
make docker-compose-logs# Executar migrations
make migrate-up
# Reverter migrations
make migrate-down# Gerar documentação Swagger
make swagger
# Abrir documentação local
make docs# Instalar dependências
make deps
# Atualizar dependências
make deps-update
# Limpar dependências não utilizadas
make deps-clean# Remover arquivos de build
make clean
# Limpeza completa (incluindo cache do Go)
make clean-all# 1. Clone o repositório
git clone https://git.evoai.app/Evolution/evolution-go.git
cd evolution-go
# 2. Setup completo do ambiente
make setup
# 3. Configure o .env
cp .env.example .env
# Edite o .env com suas configurações
# 4. Rode em modo desenvolvimento
make dev# Rodar com hot reload
make watch
# Em outro terminal, rodar testes em watch mode
# (requer: go install github.com/cespare/reflex@latest)
reflex -r '\.go$' -s -- make test# Executar todas as verificações
make check
# Se tudo passar, commit e push
git add .
git commit -m "feat: sua feature"
git push# 1. Rodar todos os testes
make test
# 2. Build da imagem Docker
make docker-build
# 3. Testar localmente
make docker-run
# 4. Se tudo ok, fazer tag e push
docker tag evolution-go:latest seu-registry/evolution-go:v1.0.0
docker push seu-registry/evolution-go:v1.0.0# Ver status da aplicação
make status
# Ver logs em tempo real
make logs
# Profile de CPU (aplicação deve estar rodando)
make profile-cpu
# Profile de memória (aplicação deve estar rodando)
make profile-mem
# Ver informações de versão
make versionInstale estas ferramentas para habilitar recursos adicionais:
# Hot reload
go install github.com/cosmtrek/air@latest
# Linter
go install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
# Swagger generator
go install github.com/swaggo/swag/cmd/swag@latest
# Watch mode para testes
go install github.com/cespare/reflex@latest- Use
make helpsempre que esquecer um comando - Use
make watchdurante desenvolvimento para hot reload automático - Use
make checkantes de fazer commit - Use
make setupem uma nova máquina para configurar tudo de uma vez - Configure seu IDE para rodar
make fmtao salvar arquivos
Para documentação completa da API e guias detalhados:
- Documentação Oficial - Guias, tutoriais e referência
- API Swagger - Documentação interativa (quando servidor estiver rodando)
- macOS:
xcode-select --install - Ubuntu/Debian:
sudo apt-get install build-essential - Windows: Use WSL ou instale Make para Windows
go install github.com/cosmtrek/air@latestgo install github.com/golangci/golangci-lint/cmd/golangci-lint@latest# Mude a porta no .env
SERVER_PORT=8080Dica Final: Rode make help para ver a lista completa e atualizada de comandos!