Air para Go: guia completo com exemplos

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

O que é Air e para que serve?

\n\n

Air é uma poderosa utilidade para desenvolvedores Go que fornece live reload (recarga automática) de aplicações. Se você já escreveu aplicações web em Go, sabe como é tedioso parar manualmente o servidor (Ctrl+C), recompilar o projeto (go build) e executá-lo novamente toda vez. O Air automatiza esse processo: ele monitora as alterações no código-fonte do seu projeto e automaticamente recompila e reinicia a aplicação sempre que um arquivo é salvo.

\n\n

O Air foi criado pela equipe Cosmos (anteriormente conhecida como Tendermint) e é escrito em Go. Não é uma biblioteca no sentido clássico (você não a importa no seu código), mas sim uma ferramenta de linha de comando que é executada em paralelo com sua aplicação.

\n\n

Para que serve o Air?

\n
    \n
  • Acelera o desenvolvimento: economiza minutos gastos com recompilação manual.
  • \n
  • Praticidade: basta salvar o arquivo — e o servidor reinicia automaticamente.
  • \n
  • Suporte a qualquer projeto Go: funciona com servidores web, utilitários CLI, bots do Telegram e qualquer outra aplicação.
  • \n
  • Configuração flexível: é possível configurar a ignorância de pastas, atrasos, comandos adicionais e muito mais.
  • \n
\n\n

O Air é especialmente útil no desenvolvimento de aplicações web com frameworks como Gin, Echo, Fiber ou o net/http padrão, onde cada alteração exige reinicialização do servidor.

\n\n

Instalação do Air

\n\n

O Air pode ser instalado de várias maneiras. Escolha a mais adequada para o seu sistema.

\n\n

Método 1: Instalação via go install (recomendado)

\n

A maneira mais simples é usar o gerenciador de pacotes padrão do Go. Certifique-se de ter o Go versão 1.16 ou superior instalado.

\n
go install github.com/air-verse/air@latest
\n

Após isso, o arquivo binário air será colocado no diretório $GOPATH/bin (geralmente ~/go/bin). Certifique-se de que este diretório está adicionado à variável de ambiente PATH.

\n\n

Método 2: Instalação via Homebrew (macOS / Linux)

\n

Se você usa macOS ou Linux com Homebrew, a instalação é trivial:

\n
brew install air
\n\n

Método 3: Instalação via script (Linux / macOS / WSL)

\n

Você pode usar o script de instalação:

\n
curl -sSfL https://raw.githubusercontent.com/air-verse/air/master/install.sh | sh -s
\n\n

Método 4: Instalação via Docker

\n

Para quem prefere Docker:

\n
docker run -it --rm -v "$PWD":/app -w /app cosmtrek/air
\n\n

Verificando a instalação

\n

Após a instalação, verifique se o Air está funcionando:

\n
air -v
\n

Você deve ver a versão da utilidade, por exemplo: v1.52.3

\n\n

Início rápido com exemplo de código

\n\n

Vamos criar uma aplicação web simples em Go e configurar o live reload com Air.

\n\n

Passo 1: Crie um novo projeto

\n
mkdir my-air-app\ncd my-air-app\ngo mod init my-air-app
\n\n

Passo 2: Escreva um servidor HTTP simples

\n

Crie o arquivo main.go:

\n
package main\n\nimport (\n    "fmt"\n    "net/http"\n)\n\nfunc main() {\n    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {\n        fmt.Fprintf(w, "Olá, Air! Hora atual: %s", time.Now().Format("15:04:05"))\n    })\n\n    fmt.Println("Servidor iniciado em http://localhost:8080")\n    http.ListenAndServe(":8080", nil)\n}
\n\n

Passo 3: Inicialize a configuração do Air

\n
air init
\n

Este comando cria o arquivo .air.toml na raiz do projeto com as configurações padrão. Você pode editá-lo posteriormente conforme suas necessidades.

\n\n

Passo 4: Execute o Air

\n
air
\n

Você verá uma saída, co

Recommendations