| name | ux-auditor-app |
| description | Auditoria completa de UI/UX, CSS, HTML e experiência do app participante (PWA Mobile) |
SKILL: UX Auditor App (Auditor de Experiencia do App Participante)
Visao Geral
Auditoria completa e sistematica de UI/UX, CSS, HTML, Design e Experiencia do app do participante (PWA Mobile). Varre todas as telas, fragmentos, estilos, componentes e fluxos de navegacao do app participante para garantir consistencia visual, acessibilidade, performance e conformidade com o Design System.
Escopo: EXCLUSIVO para o app participante (/public/participante/). Para auditar admin, usar auditor-module ou code-inspector.
Diferenca das outras skills:
frontend-crafter → CRIA telas/componentes
auditor-module → Audita 1 modulo (multidimensional: seguranca, financeiro, UI, etc.)
ux-auditor-app → Audita TODA a experiencia do app participante (UI/UX/Design holistica)
Quando Usar
- Revisao geral do app participante antes de release
- Inconsistencias visuais reportadas por usuarios
- Apos refatoracao de CSS ou HTML de multiplas telas
- Onboarding de novo dev para entender o estado atual do frontend
- Auditoria periodica (recomendado: mensal)
Arquitetura do App Participante
public/participante/
├── index.html # Entry point (PWA shell)
├── manifest.json # PWA config
├── service-worker.js # Offline support
├── DESIGN_SYSTEM.md # Referencia visual
│
├── css/ # 13 arquivos CSS
│ ├── _app-tokens.css # DESIGN TOKENS (fonte da verdade)
│ ├── participante.css # Estilos globais
│ ├── bottom-sheet-nav.css
│ ├── splash-screen.css
│ ├── pull-refresh.css
│ ├── quick-access-bar.css
│ ├── avisos.css
│ ├── boas-vindas.css
│ ├── campinho.css
│ ├── copa-sc.css
│ ├── matchday.css
│ └── top10-destaque.css
│
├── fronts/ # 18 fragmentos HTML (SPA)
│ ├── home.html
│ ├── ranking.html
│ ├── rodadas.html
│ ├── extrato.html
│ ├── top10.html
│ ├── melhor-mes.html
│ ├── pontos-corridos.html
│ ├── mata-mata.html
│ ├── campinho.html
│ ├── capitao.html
│ ├── artilheiro.html
│ ├── luva-ouro.html
│ ├── dicas.html
│ ├── copa-times-sc.html
│ ├── configuracoes.html
│ ├── historico.html
│ └── boas-vindas.html
│
├── js/ # Core + 26 modulos JS
│ ├── participante-navigation.js
│ ├── participante-cache.js
│ ├── participante-auth.js
│ └── modules/ # 1 JS por tela
│
└── modules/ # Legacy (ranking)
Protocolo de Auditoria (7 Dimensoes)
DIMENSAO 1: Design Tokens & Variaveis CSS
Arquivo fonte da verdade: css/_app-tokens.css
Checklist:
Red Flags:
| Problema | Severidade | Como Detectar |
|---|
| Cor hardcoded em CSS/HTML | ALTO | grep -rn "#[0-9a-fA-F]{3,6}" --include="*.css" --include="*.html" excluindo _app-tokens.css |
font-family inline sem token | ALTO | grep -rn "font-family:" --include="*.css" fora do tokens |
px sem token em spacing | MEDIO | Inspecionar padding/margin sem var(--app-space-*) |
z-index arbitrario | ALTO | grep -rn "z-index:" --include="*.css" comparar com tokens |
DIMENSAO 2: Tipografia (3 Fontes Obrigatorias)
Regra: O app usa 3 fontes com papeis distintos:
| Fonte | Token | Uso | Classe CSS |
|---|
| Inter | --app-font-base | Corpo de texto, paragrafos | (padrao, sem classe extra) |
| Russo One | --app-font-brand | Titulos, stats, badges, CTAs, nomes de destaque | .font-brand, .app-brand-title, .app-brand-stat |
| JetBrains Mono | --app-font-mono | Valores numericos (pontos, dinheiro, posicoes) | .app-value-mono, .font-mono |
Checklist:
Red Flags:
| Problema | Severidade |
|---|
| Titulo sem Russo One | ALTO |
| Valor numerico sem JetBrains Mono | MEDIO |
| Fonte nao carregada (FOUT/FOIT) | ALTO |
| Uso de Lexend (legado, substituido por Inter) | MEDIO |
DIMENSAO 3: Dark Theme & Cores
Principio: OLED-first. Background principal #0a0a0a, surfaces #1a1a1a.
Checklist:
Cores por Modulo (quando aplicavel):
| Modulo | Cor Primaria | Variavel |
|---|
| Artilheiro | Verde #22c55e | --module-artilheiro-primary |
| Capitao | Roxo #8b5cf6 | --module-capitao-primary |
| Luva de Ouro | Dourado #ffd700 | --module-luva-primary |
DIMENSAO 4: Responsividade & Mobile-First
Principio: App participante eh 100% mobile-first. Desktop eh bonus.
Viewports de teste:
- 360x640 (Android pequeno)
- 375x812 (iPhone X/11/12)
- 390x844 (iPhone 13/14)
- 414x896 (iPhone XR/11)
- 768x1024 (Tablet - bonus)
Checklist:
DIMENSAO 5: Estados Visuais (UX Completo)
Toda tela/componente DEVE ter 5 estados visuais:
| Estado | Descricao | Implementacao Esperada |
|---|
| Loading | Dados carregando | Spinner .app-spinner ou skeleton |
| Sucesso | Dados renderizados | Tela normal com dados |
| Vazio | Sem dados | Mensagem amigavel + icone + CTA |
| Erro | Falha na API | Mensagem de erro + botao "Tentar novamente" |
| Offline | Sem internet | Dados do cache + indicador offline |
Checklist por Fragmento (fronts/*.html):
DIMENSAO 6: Navegacao & Fluxos SPA
Checklist:
Fluxo Critico - Pre-Temporada:
DIMENSAO 7: PWA, Performance & Acessibilidade
PWA:
Performance:
Acessibilidade (A11y):
Icones:
Modos de Execucao
Auditoria Completa (todas as 7 dimensoes)
auditar UX do app participante
Executa TODAS as 7 dimensoes. Gera relatorio completo.
Auditoria por Dimensao
auditar tokens do app participante
auditar tipografia do app
auditar dark mode do participante
auditar responsividade do app
auditar estados visuais do app
auditar navegacao do app
auditar PWA e acessibilidade do app
Auditoria por Tela Especifica
auditar UX da tela de ranking do participante
auditar design do extrato no app
Audita TODAS as 7 dimensoes, mas APENAS na tela especificada.
Comparacao de Telas
comparar UX do ranking com extrato no app
Compara consistencia visual entre duas telas.
🔧 AUTO-FIX MODE (NOVO)
Script de Auto-Fix
Localização: scripts/ux-auto-fix.js
Detecta e corrige automaticamente issues comuns de UX no app participante.
Issues Automatizáveis (Confidence >= 80%)
| Tipo | Detecção | Fix Automático | Confidence |
|---|
| Cores hardcoded | #FF5500, #fff, #0a0a0a | → Design tokens (var(--app-primary)) | 95% |
| Z-index arbitrário | z-index: 999 | → Camadas semânticas (var(--app-z-modal)) | 80-95% |
| Emojis como ícones | 🏆, ⚽, 💰 | → Material Icons | 90% |
| Font-family hardcoded | font-family: Arial | → Tokens (var(--app-font-base)) | 90% |
| Inline styles | style="color:#fff" | → Extrair para CSS com tokens | 85% |
Uso do Script
node scripts/ux-auto-fix.js
node scripts/ux-auto-fix.js --apply
node scripts/ux-auto-fix.js --apply --commit
node scripts/ux-auto-fix.js --file=css/campinho.css --apply
Safety Features
✅ Backup automático antes de aplicar mudanças (.ux-auto-fix-backup/)
✅ Git clean check - bloqueia se working directory não está limpo
✅ Confidence scoring - só aplica fixes com >= 80% confiança
✅ Dry-run mode - preview antes de aplicar
Exemplo de Output
================================================================================
🔍 UX AUTO-FIX REPORT - DRY-RUN
================================================================================
📊 RESUMO
Cores hardcoded em CSS: 604 issue(s)
Z-index arbitrário: 7 issue(s)
Font-family hardcoded: 26 issue(s)
Emoji como ícone: 2 issue(s)
Total: 639 issue(s) detectado(s)
📝 DETALHES
Cores hardcoded em CSS:
css/campinho.css:8
❌ #0a0a0a
✅ var(--app-bg)
💡 Cor hardcoded mapeada para token oficial (confidence: 95%)
css/campinho.css:102
❌ #fff
✅ var(--app-text-primary)
💡 Cor hardcoded mapeada para token oficial (confidence: 95%)
...
Workflow Recomendado
1. Rodar auditoria completa:
/ux-auditor-app
2. Se encontrar issues auto-fixáveis, preview:
node scripts/ux-auto-fix.js
3. Revisar mudanças propostas
4. Aplicar fixes:
node scripts/ux-auto-fix.js --apply
5. Testar app manualmente
6. Commit:
git commit -m "fix(ux): auto-fix [N] issues"
Limitações e Edge Cases
⚠️ Não corrige automaticamente:
- Estados visuais (loading, empty, error)
- Responsividade (overflow, touch targets)
- Acessibilidade (aria-labels, focus states)
- Navegação SPA (rotas, history)
- Performance (animações, lazy loading)
Esses casos requerem análise e fix manual.
Workflow de Auditoria
Passo 1: Carregar Referencia
Ler: css/_app-tokens.css (fonte da verdade)
Ler: DESIGN_SYSTEM.md (referencia visual)
Passo 2: Varrer Fragmentos HTML
Para cada fronts/*.html:
- Verificar estrutura HTML
- Buscar classes CSS usadas
- Detectar estilos inline
- Verificar iconografia
Passo 3: Varrer Arquivos CSS
Para cada css/*.css:
- Buscar cores hardcoded
- Verificar uso de tokens
- Analisar media queries
- Verificar z-index
Passo 4: Varrer Modulos JS (UI)
Para cada js/modules/*.js:
- Buscar innerHTML com estilos inline
- Verificar estados (loading, error, empty)
- Verificar manipulacao de classes CSS
Passo 5: Gerar Relatorio
Formato do Relatorio
# AUDITORIA UX: App Participante
**Data:** DD/MM/AAAA
**Modo:** Completa | Dimensao X | Tela Y
---
## Resumo Executivo
| Dimensao | Score | Status |
|----------|-------|--------|
| 1. Design Tokens | X/Y | Aprovado/Warnings/Critico |
| 2. Tipografia | X/Y | Aprovado/Warnings/Critico |
| 3. Dark Theme | X/Y | Aprovado/Warnings/Critico |
| 4. Responsividade | X/Y | Aprovado/Warnings/Critico |
| 5. Estados Visuais | X/Y | Aprovado/Warnings/Critico |
| 6. Navegacao SPA | X/Y | Aprovado/Warnings/Critico |
| 7. PWA/A11y | X/Y | Aprovado/Warnings/Critico |
**Score Geral:** XX/100
**Telas Auditadas:** N de 18
---
## Issues Encontrados
### CRITICOS (bloquear release)
1. [Dimensao] Arquivo:linha - Descricao - Correcao sugerida
### ALTOS (corrigir antes de producao)
1. [Dimensao] Arquivo:linha - Descricao - Correcao sugerida
### MEDIOS (corrigir no sprint)
1. [Dimensao] Arquivo:linha - Descricao - Correcao sugerida
### BAIXOS (backlog)
1. [Dimensao] Arquivo:linha - Descricao - Correcao sugerida
---
## Telas Detalhadas
### home.html
| Dimensao | Status | Observacao |
|----------|--------|------------|
| Tokens | OK/NOK | ... |
| Tipografia | OK/NOK | ... |
| ... | ... | ... |
(repetir para cada tela auditada)
---
## Acoes Recomendadas (Priorizadas)
1. ...
2. ...
---
**Auditoria realizada por:** [IA]
**Proxima auditoria recomendada:** DD/MM/AAAA
Severidades
| Nivel | Criterio | Exemplos |
|---|
| CRITICO | Quebra visual, app inutilizavel | Overflow, texto invisivel, nav quebrada |
| ALTO | Inconsistencia grave, UX prejudicada | Cor hardcoded, fonte errada, sem loading state |
| MEDIO | Inconsistencia menor, nao impede uso | Spacing irregular, z-index fora do padrao |
| BAIXO | Nice to have, polimento | A11y menor, animacao faltante |
Score de Conformidade
Score = (Checks Passed / Total Checks) * 100
| Faixa | Classificacao |
|---|
| 90-100% | Excelente - Pronto para release |
| 70-89% | Bom - Corrigir warnings antes de release |
| 50-69% | Regular - Precisa melhorias significativas |
| < 50% | Critico - NAO fazer release |
Comandos de Busca Uteis
grep -rn --include="*.css" "#[0-9a-fA-F]\{3,6\}" public/participante/css/ | grep -v "_app-tokens.css"
grep -rn --include="*.html" "style=.*#[0-9a-fA-F]" public/participante/fronts/
grep -rn --include="*.css" "font-family:" public/participante/css/ | grep -v "_app-tokens.css"
grep -rn --include="*.css" "z-index:" public/participante/css/ | grep -v "_app-tokens.css"
grep -rn "innerHTML.*style=" public/participante/js/
grep -rn --include="*.html" "[^\x00-\x7F]" public/participante/fronts/
grep -rn "fa-\|font-awesome\|fontawesome" public/participante/
grep -rn "loading\|spinner\|skeleton" public/participante/js/modules/
grep -rn "error\|erro\|falha\|showError" public/participante/js/modules/
grep -rn "empty\|vazio\|nenhum\|sem dados" public/participante/js/modules/
Combinacoes com Outras Skills
| Cenario | Sequencia |
|---|
| Auditoria + correcao | ux-auditor-app → frontend-crafter |
| Auditoria pos-refatoracao | Refactor-Monolith → ux-auditor-app |
| Auditoria pre-release | ux-auditor-app → cache-auditor → code-inspector |
| Auditoria de modulo especifico (completa) | auditor-module (backend) + ux-auditor-app --tela X (frontend) |
Ultima atualizacao: 06/02/2026
Versao: 1.0.0
Autor: Sistema Super Cartola Manager