Cole um README ou um rascunho de documentação para ver a estrutura de títulos e os avisos: saltos de nível, âncoras repetidas, blocos de código abertos, links vazios ou sem definição e espaços no fim das linhas. O Markdown é lido como texto, nunca renderizado, e nenhum link é aberto.
Funciona localmente no seu navegadorO verificador lê como texto o Markdown que você cola e responde com três coisas: a estrutura de títulos, os contadores de títulos, links e blocos de código, e os avisos estruturais que consegue comprovar a partir do próprio texto. Ele não renderiza o documento, não o envia e não abre link algum, então um rascunho que ainda não deve ser compartilhado pode ser revisado aqui mesmo.
Tudo roda na página. Numa sessão medida, as únicas requisições que saíram do navegador foram as de análise do próprio site: o rascunho, os links e a estrutura ficaram na aba, e é por isso que o verificador continua funcionando sem conexão.
Links em linha são contados com título opcional, como em [texto](https://example.com "título"), e com um nível de parênteses dentro do destino, que é o que as URLs no estilo Wikipédia exigem. Links de referência contam quando o documento define o rótulo em qualquer ponto: a forma completa [texto][ref], a forma recolhida [texto][] e a forma abreviada [ref] resolvem contra uma linha como [ref]: https://example.com, com ou sem título. Links automáticos — <https://example.com> e <mailto:docs@example.com> — também contam.
Três coisas que parecem links ficam de fora de propósito: imagens escritas como , sintaxe de link dentro de código em linha como `[texto](url)` e tags HTML como <a href="https://example.com">, que são marcação e não um link automático. Um link de referência sem definição é avisado em vez de contado.
Os dois estilos de título são reconhecidos: ATX (de # a ######, com até três espaços de recuo e fechamento opcional de #) e setext (uma linha de parágrafo sublinhada com ==== para o nível um ou ---- para o nível dois). As âncoras são geradas como fazem os geradores de site estático — minúsculas, sem pontuação e com os espaços virados hífens — por isso «Install now!» e «Install now?» colidem em #install-now, e o segundo vira aviso de âncora repetida.
Um bloco aberto com ``` ou ~~~ esconde o conteúdo de todas as outras regras, e o fecha uma linha final pelo menos tão longa quanto a de abertura; um bloco sem fechamento é avisado na linha em que foi aberto. Um documento que começa com uma linha --- é lido como front matter YAML até a próxima linha --- ou ..., então os dois-pontos, os colchetes e os espaços finais dos metadados não viram aviso de prosa.
Ele não renderiza Markdown, portanto não mostra como a página vai ficar, e não busca os destinos dos links, portanto uma URL inacessível nunca é avisada. Ele verifica as regras desta página e nada além: comprimento de linha, estilo de marcador de lista, linhas em branco ao redor de blocos, alinhamento de tabelas e as demais regras de estilo de um linter completo ficam de fora, e um bloco de código recuado com quatro espaços é lido como texto comum.
Um documento de 4000 linhas com 4000 links foi analisado em cerca de 0,6 s num navegador de desktop, e o trabalho acontece quando você aperta o botão, não enquanto digita. Para revisar um repositório inteiro com um conjunto fixo de regras, um linter de linha de comando continua sendo a melhor ferramenta; esta página responde por um rascunho só, sem enviá-lo.