Home

Awesome

Front-End Checklist Logo

<h2 align="center"><a href="https://frontendchecklist.io">Front-End Checklist</a></h2> <p align="center"> <em>A Front-End Checklist é uma lista exaustiva de todos elementos que você precisa ter / testar antes de lançar seu site / página HTML em produção.</em> </p>

Participe do chat em https://gitter.im/Front-End-Checklist/Lobby Front‑End_Checklist followed Backers on Open Collective Sponsors on Open Collective Contributors StackShare CC0

Baseada em anos de experiência de desenvolvedores Front-End, com as adições provenientes de outras checklists open-source.

Índice

  1. Head
  2. HTML
  3. Webfonts
  4. CSS
  5. Imagens
  6. JavaScript
  7. Segurança
  8. Performance
  9. Acessibilidade
  10. SEO
  11. Traduções

Como usar?

Todos itens na Front-End Checklist são necessários na maioria dos projetos, mas alguns elementos podem ser omitidos ou não são tão essenciais (no caso da administração de um aplicativo web, você pode não precisar de um feed RSS por exemplo). Nós escolhemos três níveis de flexibilidade:

Alguns recursos possuem um emoticon para ajudar você a entender qual tipo de conteúdo / ajuda você pode encontrar na checklist:

Você pode contribuir no App Front-End Checklist lendo o arquivo README_APP que explica tudo sobe o projeto.


Head

Notas: Você pode acessar uma lista com tudo que poderia ser encontrado na <head> de um document HTML.

Meta tag

<!doctype html> <!-- HTML5 -->

As próximas 3 meta tags (Charset, X-UA Compatible e Viewport) precisam vir primeiro no head.

<!-- Determine o encoding de caracteres para o document -->
<meta charset="utf-8">
<!-- Instrua o Internet Explorer a usar seu mais recente engine de renderização -->
<meta http-equiv="x-ua-compatible" content="ie=edge">
<!-- Viewport para web design responsivo -->
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<!-- Título do Document -->
<title>Título de Página menor que 55 caracteres</title>
<!-- Meta Descrição -->
<meta name="description" content="Descrição da página com menos de 150 caracteres">
<!-- Favicon padrão -->
<link rel="icon" type="image/x-icon" href="https://exemplo.com/favicon.ico">
<!-- Formato favicon recomendado -->
<link rel="icon" type="image/png" href="https://exemplo.com/favicon.png">
<!-- Apple Touch Icon (pelo menos 200x200px) -->
<link rel="apple-touch-icon" href="/custom-icon.png">

<!-- Para rodar a aplicação web em tela cheia -->
<meta name="apple-mobile-web-app-capable" content="yes">

<!-- Estilo da Barra de Status (veja as Meta Tags suportadas abaixo para valores disponíveis) -->
<!-- Não tem efeito nenhum se você não tiver a meta tag anterior -->
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<!-- Microsoft Tiles -->
<meta name="msapplication-config" content="browserconfig.xml" />

O markup xml mínimo necessário para o arquivo browserconfig.xml é como segue:

<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
   <msapplication>
     <tile>
        <square70x70logo src="pequeno.png"/>
        <square150x150logo src="medio.png"/>
        <wide310x150logo src="largo.png"/>
        <square310x310logo src="grande.png"/>
     </tile>
   </msapplication>
</browserconfig>
<!-- Ajuda a evitar problemas com conteúdo duplicado -->
<link rel="canonical" href="http://exemplo.com/2017/09/um-novo-artigo-para-ler.html">

Tags HTML

<!-- Indicamos o idioma definido para a página atual -->
<html lang="pt-br">
<!-- Indicamos a direção de leitura (rtl é sigla para right to left, isto é, da direita para a esquerda) -->
<html dir="rtl">
<!-- Indicamos o idioma alternativo definido para a página atual -->
<link rel="alternate" href="https://es.exemplo.com/" hreflang="es">

Social meta

Facebook OG e Twitter Cards são, para qualquer website, altamente recomendados. As outras tags de mídia social podem ser consideradas se seu público-alvo tem uma presença em particular nelas, e você quer se assegurar de exibí-las.

Notas: Usar og:image:width e og:image:height vai especificar as dimensões da imagens para o crawler para que ele renderize a imagem imediatamente sem ter que baixá-la e processá-la assíncronamente.

<meta property="og:type" content="website">
<meta property="og:url" content="https://exemplo.com/pagina.html">
<meta property="og:title" content="Título do Conteúdo">
<meta property="og:image" content="https://exemplo.com/imagem.jpg">
<meta property="og:description" content="Descrição Aqui">
<meta property="og:site_name" content="Nome do Site">
<meta property="og:locale" content="pt_BR">
<!-- As próximas tags são opcionais mas recomendadas -->
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta name="twitter:card" content="sumário">
<meta name="twitter:site" content="@conta_do_site">
<meta name="twitter:creator" content="@conta_individual">
<meta name="twitter:url" content="https://exemplo.com/pagina.html">
<meta name="twitter:title" content="Título do Conteúdo">
<meta name="twitter:description" content="Descrição de conteúdo com menos de caracteres">
<meta name="twitter:image" content="https://exemplo.com/imagem.jpg">

⬆ voltar ao topo


HTML

Melhores práticas

Testando HTML

⬆ voltar ao topo


Webfonts

Notas: Usar webfonts pode causar um flash de texto invisível ou sem estilização - cogite ter fontes reserva e/ou utilizar webfont loaders para controlar esse comportamento.

⬆ voltar ao topo


CSS

Notas: Dê uma olhada em Guidelines CSS e Guidelines Sass seguidas pela maioria dos desenvolvedores Front-End. Se você tem alguma dúvida sobre propriedades CSS, você pode visitar a CSS Reference. Existe também um pequeno Guia de Código para consistência.

<div id="js-slider" class="meu-slider">
<!-- ou -->
<div id="id-usado-pelo-cms" class="js-slider meu-slider">

Performance

Validação CSS

Pixel Perfect - Extensão Chrome

⬆ voltar ao topo


Imagens

Notas: Para um entendimento completo de otimização de imagem, veja o ebook grátis Essential Image Optimization, do Addy Osmani.

Melhores práticas

⬆ voltar ao topo


JavaScript

Melhores práticas

<noscript>
  Você precisa habilitar JavaScript para rodar esta aplicação.
</noscript>

Validação JavaScript

⬆ voltar ao topo


Segurança

Scaneie e cheque seu website

Melhores práticas

⬆ voltar ao topo


Performance

Melhores práticas

Preparando requisições a caminho

<link rel="dns-prefetch" href="https://exemplo.com">
<link rel="preconnect" href="https://exemplo.com">
<link rel="prefetch" href="image.png">
<link rel="preload" href="app.js">

Testes de Performance

⬆ voltar ao topo


Acessibilidade

Notas: Você pode assistir a playlist A11ycasts com Rob Dodson 📹

Melhores práticas

Cabeçalhos

Semântica

Formulários

Testes de Acessibilidade

⬆ voltar ao topo


SEO

<!-- Exemplo: Tags para links de paginação para a segunda página de uma lista paginada -->
<link rel="prev" href="https://exemplo.com/?page=1">
<link rel="next" href="https://exemplo.com/?page=3">

⬆ voltar ao topo


Traduções

O Front-End Checklist também está disponível em outros idiomas. Obrigado a todos tradutores por seu incrível trabalho!


Badge da Front-End Checklist

Se você quer mostrar que está seguindo as regras do Front-End Checklist, ponha esta badge no seu arquivo README!

Front‑End_Checklist followed

[![Front‑End_Checklist followed](https://img.shields.io/badge/Front‑End_Checklist-followed-brightgreen.svg)](https://github.com/thedaviddias/Front-End-Checklist/)

⬆ voltar ao topo


Contribuindo

Abra uma issue ou uma pull request para sugerir mudanças ou adições.

Guia

O repositório original do Front-End Checklist consiste em duas branches:

1. master

Esta branch consiste no arquivo README.md que é automaticamente refletido no website Front-End Checklist.

2. develop

Esta branch será usada para fazer algumas mudanças significativas à estrutura, conteúdo se necessário. É preferível usar a branch master para arrumar erros pequenos ou adicionar um novo item.

Suporte

Se você tem alguma pergunta ou sugestão, não hesite em usar o Gitter ou Twitter:

Autor

David Dias

Contribuidores

Este projeto existe graças a todas as pessoas que contribuem. [Contribute]. <a href="https://github.com/thedaviddias/Front-End-Checklist/graphs/contributors"><img src="https://opencollective.com/front-end-checklist/contributors.svg?width=890" /></a>

Apoiadores

Obrigado a todos os nossos apoiadores! 🙏 [Torne-se um apoiador]

<a href="https://opencollective.com/front-end-checklist#backers" target="_blank"><img src="https://opencollective.com/front-end-checklist/backers.svg?width=890"></a>

Patrocinadores

Suporte este projeto tornando-se um patrocinador. Seu logo irá aparecer aqui com um link pro seu website. [Torne-se um patrocinador]

<a href="https://opencollective.com/front-end-checklist/sponsor/0/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/0/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/1/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/1/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/2/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/2/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/3/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/3/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/4/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/4/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/5/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/5/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/6/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/6/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/7/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/7/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/8/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/8/avatar.svg"></a> <a href="https://opencollective.com/front-end-checklist/sponsor/9/website" target="_blank"><img src="https://opencollective.com/front-end-checklist/sponsor/9/avatar.svg"></a>

Licença

CC0

⬆ voltar ao topo