Pular para o conteúdo
Skillpedia
Sites e telas (frontend)280 mil · #131

vite-patterns

Ajuda seu agente a configurar e otimizar o Vite, uma ferramenta de build. Permite ajustar o processo de compilação, gerenciar dependências e melhorar o desempenho de projetos web.

O que ela faz

Esta skill ajuda você a configurar e otimizar o Vite, uma ferramenta usada para construir projetos web. Ela explica como o Vite funciona, como ajustar suas configurações e como usar plugins para adicionar funcionalidades.

Quando usar

  • ✓Ao configurar o arquivo `vite.config.ts`.
  • ✓Ao ajustar como o Vite prepara seu projeto para produção.
  • ✓Ao resolver problemas com o servidor de desenvolvimento ou o processo de build.

Exemplo do que pedir para a IA

“Como configuro o Vite para usar um proxy de API?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/affaan-m/ECC/blob/main/pi/core/skills/vite-patterns/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/affaan-m/ECC/blob/main/pi/core/skills/vite-patterns/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

O Vite usa um servidor de desenvolvimento rápido que transforma seu código sob demanda. Para produção, ele agrupa seu código usando ferramentas como Rollup ou Rolldown, otimizando o tamanho e o desempenho. Ele também pré-agrupa dependências para acelerar o início.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add affaan-m/ECC --skill vite-patterns

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/affaan-m/ECC/main/pi/core/skills/vite-patterns/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Padrões do Vite

Padrões de ferramenta de build e servidor de desenvolvimento para projetos Vite 8+. Abrange configuração, variáveis de ambiente, configuração de proxy, modo de biblioteca, pré-empacotamento de dependências e armadilhas comuns de produção.

Quando Usar

  • Configurando vite.config.ts ou vite.config.js
  • Configurando variáveis de ambiente ou arquivos .env
  • Configurando proxy do servidor de desenvolvimento para backends de API
  • Otimizando a saída do build (chunks, minificação, assets)
  • Publicando bibliotecas com build.lib
  • Solucionando problemas de pré-empacotamento de dependências ou interoperabilidade CJS/ESM
  • Depurando erros de HMR, servidor de desenvolvimento ou build
  • Escolhendo ou ordenando plugins do Vite

Como Funciona

  • Modo de desenvolvimento serve arquivos de origem como ESM nativo — sem empacotamento. As transformações acontecem sob demanda por solicitação de módulo, é por isso que os inícios frios são rápidos e o HMR é preciso.
  • Modo de build usa Rolldown (v7+) ou Rollup (v5–v6) para empacotar o aplicativo para produção com tree-shaking, code-splitting e minificação baseada em Oxc.
  • Pré-empacotamento de dependências converte dependências CJS/UMD em ESM uma vez via esbuild e armazena o resultado em cache sob node_modules/.vite, para que inícios subsequentes pulem o trabalho.
  • Plugins compartilham uma interface unificada entre desenvolvimento e build — o mesmo objeto de plugin funciona tanto para as transformações sob demanda do servidor de desenvolvimento quanto para o pipeline de produção.
  • Variáveis de ambiente são inlined estaticamente no tempo de build. Variáveis prefixadas com VITE_ se tornam constantes públicas no bundle; tudo sem prefixo é invisível para o código do cliente.

Exemplos

Estrutura de Configuração

Configuração Básica

// vite.config.ts
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'

export default defineConfig({
  plugins: [react()],
  resolve: {
    alias: { '@': new URL('./src', import.meta.url).pathname },
  },
})

Configuração Condicional

// vite.config.ts
import { defineConfig, loadEnv } from 'vite'
import react from '@vitejs/plugin-react'

export default defineConfig(({ command, mode }) => {
  const env = loadEnv(mode, process.cwd())   // VITE_ prefixed only (safe)

  return {
    plugins: [react()],
    server: command === 'serve' ? { port: 3000 } : undefined,
    define: {
      __API_URL__: JSON.stringify(env.VITE_API_URL),
    },
  }
})

Opções Chave de Configuração

Chave Padrão Descrição
root '.' Raiz do projeto (onde index.html reside)
base '/' Caminho base público para assets implantados
envPrefix 'VITE_' Prefixo para variáveis de ambiente expostas ao cliente
build.outDir 'dist' Diretório de saída
build.minify 'oxc' Minificador ('oxc', 'terser', ou false)
build.sourcemap false true, 'inline', ou 'hidden'

Plugins

Plugins Essenciais

A maioria das necessidades de plugin são cobertas por um punhado de pacotes bem mantidos. Use-os antes de escrever os seus próprios.

Plugin Propósito Quando usar
@vitejs/plugin-react-swc HMR do React + Fast Refresh via SWC Padrão para aplicativos React (mais rápido que a variante Babel)
@vitejs/plugin-react HMR do React + Fast Refresh via Babel Apenas se você precisar de plugins Babel (emotion, decoradores MobX)
@vitejs/plugin-vue Suporte a SFC do Vue 3 Aplicativos Vue
vite-plugin-checker Executa tsc + ESLint em thread de worker com overlay HMR Qualquer aplicativo TypeScript — o Vite NÃO faz verificação de tipos durante vite build
vite-tsconfig-paths Honra aliases de tsconfig.json paths Sempre que você já tiver aliases em tsconfig.json
vite-plugin-dts Emite arquivos .d.ts em modo de biblioteca Publicando bibliotecas TypeScript
vite-plugin-svgr Importa SVGs como componentes React Aplicativos React usando SVGs como componentes
rollup-plugin-visualizer Relatório de treemap/sunburst do bundle Auditorias periódicas de tamanho de bundle (use enforce: 'post')
vite-plugin-pwa PWA + Workbox sem configuração Aplicativos com capacidade offline

Chamada crítica: vite build transpila, mas NÃO verifica tipos. Erros de tipo são enviados silenciosamente para produção, a menos que você adicione vite-plugin-checker ou execute tsc --noEmit em CI.

Criação de Plugins Personalizados

A criação é rara — a maioria das necessidades são cobertas por plugins existentes. Quando você precisar de um, comece inline em vite.config.ts e extraia apenas se for reutilizado.

// vite.config.ts — plugin inline mínimo
function myPlugin(): Plugin {
  return {
    name: 'my-plugin',                       // obrigatório, deve ser único
    enforce: 'pre',                           // 'pre' | 'post' (opcional)

…
Perguntas frequentes

O que é HMR?

HMR (Hot Module Replacement) atualiza partes do seu código em tempo real no navegador sem recarregar a página inteira, tornando o desenvolvimento mais rápido.

Por que usar plugins no Vite?

Plugins estendem a funcionalidade do Vite, permitindo adicionar recursos como suporte a React, Vue, otimização de imagens, ou integração com PWA (Progressive Web Apps).

Como o Vite lida com variáveis de ambiente?

Variáveis de ambiente prefixadas com `VITE_` são incluídas no código do seu projeto para uso no frontend. Outras variáveis não são expostas por segurança.

Detalhes

Descrição original do autor

Vite build tool patterns including config, plugins, HMR, env variables, proxy setup, SSR, library mode, dependency pre-bundling, and build optimization. Activate when working with vite.config.ts, Vite plugins, or Vite-based projects.

repo: affaan-m/ECC

Popularidade

Estrelas no GitHub
280 mil
Posição no ranking
#131
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas