Cole o conteúdo de manifest.webmanifest. A ferramenta não busca ícones, verifica service workers nem garante que o navegador ofereça a instalação.
Funciona localmente no seu navegadorCole o JSON de um arquivo manifest.webmanifest e a página informa o que um navegador leria dele: o nome, a URL inicial, o modo de exibição, os ícones declarados e as cores do tema, além do JSON normalizado para devolver ao seu projeto.
Tudo roda neste navegador. A página não baixa o manifesto, os ícones nem o site, então um resultado limpo significa que os campos declarados estão corretos — não que o aviso de instalação vai aparecer.
name e short_name precisam ser strings e ao menos um deve existir. start_url precisa ser string e ser analisada como URL; valores de outro tipo são reportados porque o navegador os ignora e volta para a URL do documento.
display precisa ser string e um de fullscreen, standalone, minimal-ui ou browser. icons precisa ser um array; cada entrada exige src, sizes precisa ser "any" ou uma lista largura x altura, e purpose aceita apenas any, maskable e monochrome. theme_color e background_color passam pelo analisador de cores CSS do próprio navegador.
O aviso do topo segue o achado mais grave: verde só com a lista vazia, amarelo com avisos, vermelho para erros como JSON inválido, raiz que não é objeto, start_url não textual, icons que não é array ou ícone sem src.
Cada achado nomeia o campo ou o índice do ícone e o valor que o gerou, para corrigir o manifesto sem adivinhar.
Não requisita o manifesto, os ícones nem qualquer outro recurso, não olha o service worker e não testa a instalação. start_url relativos são checados só por sintaxe; nada é resolvido contra a URL real do seu manifesto.
Uma marca de ordem de bytes UTF-8 no começo do texto é tolerada, porque editores a adicionam; qualquer outro conteúdo que não seja JSON puro é reportado com a mensagem do analisador.