Formatador de código
Cole código e ele se organiza — idioma detectado, sem botão para clicar.
Código formatado
Como usar
- Cole o código na caixa — ele é formatado enquanto você digita; sem botão para clicar.
- O idioma é detectado a partir do código. Se a detecção errar, escolha um na lista; 2 ou 4 espaços e 80, 100 ou 120 colunas reorganizam imediatamente.
- Copie o resultado ou baixe-o com a extensão correta (.js, .ts, .json, .py …).
Exemplo
Entrada
function greet(user){if(!user){return "Olá, visitante";}const tags=["novo","ativo"];return `Olá, ${user.name}!`;} export default greet;
Formatado
function greet(user) { if (!user) { return "Olá, visitante"; } const tags = ["novo", "ativo"]; return `Olá, ${user.name}!`; } export default greet;
Formatado com as regras padrão (2 espaços, 80 colunas). O Prettier acrescenta ponto e vírgula e aspas duplas; o template literal e o retorno para visitantes não mudam.
Regras, limites e problemas conhecidos
- A formatação altera espaços em branco e as normalizações do próprio formatador (aspas, ponto e vírgula, vírgulas finais); ela nunca executa código, ordena chaves ou renomeia identificadores. Strings mantêm o conteúdo.
- Motores: Prettier para JavaScript, TypeScript, JSON, CSS, SCSS, Less, HTML, Vue e GraphQL; Ruff (compatível com Black) para Python. Apenas o motor do idioma atual é baixado, no primeiro uso, e o navegador o armazena em cache.
- A detecção automática é heurística. Um trecho que começa com uma tag pode ser lido como HTML mesmo sendo JSX; escolha JavaScript ou TypeScript manualmente. Um objeto com cara de JSON que não é JSON válido recai para JavaScript.
- A seleção manual é soberana: escolher CSS nunca formata silenciosamente como SCSS. TypeScript tenta .ts e depois .tsx.
- JSON usa o parser json do Prettier, então objetos curtos podem ficar em uma linha. Para validação estrita, ordem de chaves ou minificação, use a caixa de ferramentas JSON. Chaves duplicadas mantêm o último valor, como o JSON.parse faz.
- O estilo padrão do Prettier é fixo: aspas duplas, ponto e vírgula, vírgulas finais quando válidas. .prettierrc e .editorconfig não são lidos e não há opções de aspas ou ponto e vírgula. Python usa aspas duplas e respeita vírgulas finais mágicas (Ruff/Black).
- Os espaços em HTML seguem htmlWhitespaceSensitivity: css, então espaços ao redor de elementos inline podem diferir da origem. Markdown, YAML e XML não são suportados; o editor Markdown, o conversor de configuração e o formatador XML cobrem esses casos.
- A saída usa LF sem quebra de linha final, e a formatação é idempotente. Acima de 200.000 caracteres o resultado é atualizado cerca de 0,6 s depois de você parar de digitar; a formatação roda em um Web Worker e o texto nunca é enviado, colocado na URL ou armazenado.
Ferramentas relacionadas
O que as pessoas costumam precisar depois que o código está legível.