impeccable_flutter 0.1.1
impeccable_flutter: ^0.1.1 copied to clipboard
CLI Dart para detectar anti-padrões de design em apps Flutter. Modo --fast faz scan regex (incluindo 2 checks cross-file: monotonous spacing, everything centered). Subcomando `skills install/update/ch [...]
Changelog #
Todos os releases do impeccable_flutter (CLI). Segue Keep a Changelog e SemVer.
0.1.1 #
Adicionado #
- Schema JSON unificado entre
detect --fast --format=jsonedetect --format=json(full mode). Os dois agora emitem o mesmo array[{antipattern, name, description, file, line, snippet, severity, column}], com paridade ao schema doimpeccable(web) original. Antes: o full mode emitia o schema bruto docustom_lint({version, diagnostics: [{code, location: {range: ...}, ...}]}) e o fast mode emitia um schema próprio ({mode, count, findings: [...]}). Agora um único parser cobre ambos os modos para CI e ferramentas downstream.
Documentação #
- README reescrito refletindo o estado real do CLI: removido o "pré-MVP, empacotamento pub.dev TODO" e a roadmap que listava
--fast, JSON e empacotamento como TODO. Substituído pelo subcomandos atuais (detect com full e --fast e --json, skills install/update/check, live, version), workflow E2E e schema do output JSON.
0.1.0 #
Adicionado — subcomando skills #
Reduz o gap entre o CLI Dart e o impeccable (Node, web upstream):
skills install— clona o repotarcisiojr/impeccable-flutter(shallow viagit) e copia o skill bundlado para os harness dirs do projeto atual (.claude/skills/impeccable-flutter/,.cursor/skills/..., etc.). Detecta automaticamente harness dirs já presentes; default.claude/quando nada é detectado. Flags:--target=<harness>para um único,--allpara todos os 11 suportados.skills update— igual a install mas sobrescreve harness dirs existentes (force overwrite).skills check— compara versão local (lida doSKILL.mdfrontmatter num harness dir) com versão remota (lida doplugin.jsonno GitHub raw). RetornaAtualizadoouAtualização disponível.
Sem dependências novas: usa git shell + dart:io HttpClient.
Mudou #
- Description do
pubspec.yamlreflete a realidade: CLI tem--fastpróprio + delega aocustom_lintpara modo full + agora gerencia o skill viaskills install/update/check.
0.0.1 (initial release) #
Adicionados — subcomandos #
detect [path]— wrapper sobredart run custom_lint. Roda as regras doimpeccable_flutter_lintssobre o projeto. Suporta--format=human|jsone--fast.detect --fast [path]— scanner regex puro, sem analyzer. Cobre 9 regras (deep_purple_seed, bounce_elastic_curve, black_white_literal, justified_text, use_material3_false, ai_color_palette, overused_font, monotonous_spacing, everything_centered). Útil para CI rápido pré-commit ou codebases >500 arquivos.live— stub MVP. Documenta o workflow manual via hot reload (descrito emskill/reference/live.md). v0.2 ganha overlay de seleção via VM Service.version— imprime versão do CLI.
Testes #
- 13 unit tests do
--fastscanner viadart test. Cobrem todas as 9 regras + casos negativos (clean code, comments, generated files).
Conhecido — pendente #
- Empacotamento pub.dev (homepage/repository links no pubspec, polish do README, badges).
liveoverlay v0.2 (HTTP server + VM Service + WidgetInspector).