Primeiros Passos com Astro: Construa Sites Mais Rápidos

Aprenda como a arquitetura de ilhas do Astro e a geração de sites estáticos podem melhorar drasticamente a performance do seu site e suas pontuações nos Core Web Vitals.

Primeiros Passos com Astro: Construa Sites Mais Rápidos

O Astro é um gerador de sites estáticos moderno que adota uma abordagem fundamentalmente diferente para o desenvolvimento web. Em vez de enviar um framework JavaScript para cada visitante, o Astro renderiza seus componentes em HTML puro no momento do build — enviando zero JavaScript por padrão.

Por Que Escolher o Astro?

A web ficou pesada. A página web média carrega mais de 2MB de dados, e grande parte disso é JavaScript que executa antes que o usuário veja qualquer coisa. O Astro inverte esse modelo.

Com a arquitetura de ilhas do Astro, o JavaScript só é enviado quando um componente precisa especificamente de interatividade. Todo o resto se torna HTML estático e leve.

Principais Benefícios

  • Zero JS por padrão — seu conteúdo estático é enviado como HTML puro
  • Agnóstico de framework — use React, Vue, Svelte ou nenhum deles
  • Performance excepcional — pontuações nos Core Web Vitals próximas de 100/100
  • Conteúdo em primeiro lugar — suporte nativo para Markdown, MDX e coleções de conteúdo

Configurando Seu Primeiro Projeto Astro

Começar é simples. Você precisará do Node.js 18+ instalado, depois execute:

npm create astro@latest meu-blog
cd meu-blog
npm install
npm run dev

O assistente de linha de comando do Astro vai guiar você na seleção de um template e na configuração do projeto.

Entendendo a Arquitetura de Ilhas

Imagine sua página como um oceano de HTML estático e não interativo. As ilhas são componentes interativos — carrosséis, barras de busca, seções de comentários — que carregam seu JavaScript apenas quando necessário.

---
// Contador.astro — este componente só envia JS quando necessário
import Contador from './Contador.jsx';
---

<h1>Minha Página</h1>
<!-- Este contador interativo é uma "ilha" — carrega JS de forma lazy -->
<Contador client:visible />

A diretiva client:visible instrui o Astro a só hidratar este componente quando ele entra na viewport. Antes disso, é apenas HTML estático.

Coleções de Conteúdo: Organize Seu Markdown

Para blogs e sites de documentação, as Coleções de Conteúdo do Astro oferecem uma forma com tipagem segura de gerenciar arquivos Markdown:

// src/content/config.ts
import { defineCollection, z } from 'astro:content';

const blog = defineCollection({
  schema: z.object({
    title: z.string(),
    description: z.string(),
    date: z.coerce.date(),
  }),
});

export const collections = { blog };

Isso oferece autocompleção TypeScript completa e validação para seu frontmatter — sem mais erros de digitação nos seus metadados!

Performance Que Importa

Sites construídos com Astro consistentemente alcançam excelentes pontuações nos Core Web Vitals, o que importa por duas razões:

  1. SEO — o Google usa os Core Web Vitals como sinal de ranqueamento
  2. Experiência do usuário — sites mais rápidos têm menor taxa de rejeição e maior engajamento

Combinado com um CDN como o Cloudflare Pages, você obtém distribuição global com tempos de resposta abaixo de 50ms.

O Que Vem a Seguir?

Nos próximos artigos, vamos cobrir:

  • Configurando conteúdo multilíngue com roteamento i18n
  • Otimizando imagens para os Core Web Vitals
  • Monetizando seu blog Astro com Google AdSense

O Astro torna genuinamente prazerosa a construção de sites rápidos e ricos em conteúdo. Seja construindo um blog pessoal ou um grande site de documentação, a arquitetura do Astro garante que seus usuários sempre obtenham a experiência mais rápida possível.