{"_id":"@desenvolvimento-digital/add-theme","_rev":"2-b9acc9fbd4369ab01a129df9255c94a4","name":"@desenvolvimento-digital/add-theme","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@desenvolvimento-digital/add-theme","version":"1.0.0","keywords":["design-system","mui","theme","cli"],"author":"","license":"ISC","_id":"@desenvolvimento-digital/add-theme@1.0.0","maintainers":[{"name":"pedrohenc","email":"pedrolivecastro@outlook.com"}],"bin":{"add-theme":"bin/index.mjs"},"dist":{"shasum":"e9eb208c89177af353106259833bb94792a20688","tarball":"https://registry.npmjs.org/@desenvolvimento-digital/add-theme/-/add-theme-1.0.0.tgz","fileCount":5,"integrity":"sha512-MWkxdrO0Iza5ogGqL9WlnqzoLIdyZeRpbXGGzoA8SRRl1ls2C2mo6B0nLVRAVFPXVR2rM3Y8VjcAqCS7lbVEcg==","signatures":[{"sig":"MEUCIHJWW/EvgiiCAT3SBVyLP0NEoyPtLKSW/87+LhzChhmAAiEAzdtsrQMrN3syVOhSb/1TBfT7aSED9N48EOXFJ9Cp6UQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33140},"type":"module","engines":{"node":">=18"},"scripts":{"start":"node ./bin/index.mjs"},"_npmUser":{"name":"pedrohenc","email":"pedrolivecastro@outlook.com"},"_npmVersion":"10.9.2","description":"CLI interativo que gera uma pasta theme/ com o tema MUI do Design System do time (cor, tom neutro, tipografia, espaçamento/elevação, componentes) — roda dentro de qualquer projeto que já use MUI.","directories":{},"_nodeVersion":"22.16.0","dependencies":{"picocolors":"^1.1.1","@clack/prompts":"^1.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/add-theme_1.0.0_1789060214105_0.28480551339653437","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"_id":"@desenvolvimento-digital/add-theme@1.1.0","bin":{"add-theme":"bin/index.mjs"},"dist":{"shasum":"7537d6de588a631c003ff7576798085939097f88","tarball":"https://registry.npmjs.org/@desenvolvimento-digital/add-theme/-/add-theme-1.1.0.tgz","fileCount":5,"integrity":"sha512-gJnq7rSpB4ro8HibhWBZbq5kmyfu5Qcl2BlLPaF0HKzUNpBt+/dyxSsxM09uh8dKHZtarF9EZn0PuKQLf8a3AA==","signatures":[{"sig":"MEUCIDw/gI3davDDKBm1sTM44XOGnpcCRQvABJPsvoUIfQSIAiEAwgnEA7a7RD3g+c1hN0VbTWAYB+9dTx1Qf9I/OIdufQ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDEitN43Mb46POv3SYJCrPOvInpvQnA+XqF3dKKXxTzuwIhAPxGFc9nnON0eE1bBVTawMv7JKAQxMGlcVOhyMBoeu14"}],"unpackedSize":31111},"name":"@desenvolvimento-digital/add-theme","type":"module","author":"","engines":{"node":">=18"},"license":"ISC","scripts":{"start":"node ./bin/index.mjs"},"version":"1.1.0","_npmUser":{"name":"pedrohenc","email":"pedrolivecastro@outlook.com"},"keywords":["design-system","mui","theme","cli"],"_npmVersion":"10.9.2","description":"CLI interativo que gera uma pasta theme/ com o tema MUI do Design System do time (cor, tom neutro, tipografia, espaçamento/elevação, componentes) — roda dentro de qualquer projeto que já use MUI.","directories":{},"maintainers":[{"name":"pedrohenc","email":"pedrolivecastro@outlook.com"}],"_nodeVersion":"22.16.0","dependencies":{"picocolors":"^1.1.1","@clack/prompts":"^1.7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/add-theme_1.1.0_1789062893410_0.882055334302279"}}},"time":{"created":"2026-09-10T17:10:13.897Z","modified":"2026-09-10T17:54:53.691Z","1.0.0":"2026-09-10T17:10:14.239Z","1.1.0":"2026-09-10T17:54:53.497Z"},"license":"ISC","keywords":["design-system","mui","theme","cli"],"description":"CLI interativo que gera uma pasta theme/ com o tema MUI do Design System do time (cor, tom neutro, tipografia, espaçamento/elevação, componentes) — roda dentro de qualquer projeto que já use MUI.","maintainers":[{"name":"pedrohenc","email":"pedrolivecastro@outlook.com"}],"readme":"# add-theme\n\nCLI interativo que gera uma pasta `theme/` com o tema do MUI já configurado\ncom as escolhas do Design System do time (cor, tipografia,\nespaçamento/elevação) — pega os mesmos valores do guia no Figma\n(DESIGN_SYSTEM: Cores, Tipografia, Espaçamento & Elevação, Tema Light & Dark).\n\nDiferente do scaffolding completo (que cria um projeto do zero), esse aqui\nroda **dentro de qualquer projeto que você já tenha** — só precisa ter (ou\ninstalar) o MUI.\n\n## Uso\n\nDentro da raiz do projeto onde você quer o tema:\n\n```bash\nnpx add-theme\n```\n\n(depois de publicado; rodando local, ver \"Rodando local\" abaixo)\n\nO CLI pergunta, em ordem:\n\n1. **Nome da pasta** — `theme` por padrão. Se já existir uma pasta com esse\n   nome, ele avisa (e diz se já tem um tema dentro — `index.ts`, `index.tsx`,\n   `theme.ts` ou `theme.tsx`) e pergunta se pode sobrescrever o conteúdo.\n   Resposta padrão é **Não** — se você não confirmar, ele cancela sem mexer\n   em nada. Se confirmar, apaga a pasta inteira e recria do zero (não dá pra\n   sobrescrever parcialmente).\n2. **Combinação de cor** — combo1 (vermelho + laranja, erro em rosa/magenta\n   pra não colidir com o vermelho da primária), combo2 (verde + dourado) ou\n   combo3 (azul + roxo), com prévia da cor no terminal.\n3. **Tom neutro** — a escala usada em fundo, texto e bordas (`theme.palette.grey`\n   + `background`/`text`/`divider`), independente do combo de cor: Areia (tom\n   quente nos degraus claros, frio/azulado nos escuros), Azulado (frio do\n   começo ao fim) ou Neutro (cinza puro, sem matiz).\n4. **Tipografia** — Roboto, Inter, Open Sans, Poppins ou IBM Plex Sans.\n5. **Espaçamento** — Densa, Compacta, Padrão ou Confortável.\n6. **Elevação (sombras)** — Plana (sem sombra), Sutil ou Pronunciada.\n7. **Componentes** — checklist de quais overrides incluir no tema (AppBar,\n   IconButton, Button, Campo de texto, Card, Chip, Alert, Dialog, Menu/Select,\n   Tabs, Table, Switch/Checkbox/Radio, Tooltip, Paper/Divider/Avatar/Progress).\n   Vem tudo marcado por padrão — desmarca o que não precisa.\n\nAntes de confirmar, mostra uma prévia com as cores (com bloco de cor no\nterminal), fonte, os steps de espaçamento, os níveis de elevação e a lista de\ncomponentes escolhidos.\n\nE gera:\n\n```\ntheme/\n  index.ts   # export const useThemeConfig = createTheme({ ... })\n```\n\nCom cores (incluindo `contrastText` já verificado em AA), tipografia,\nespaçamento (via `theme.spacing()`) e sombras — tudo pronto, sem precisar\nmexer em nada. O nome `useThemeConfig` segue o padrão do time — apesar do\nprefixo `use`, é só um valor (`createTheme(...)` já resolvido), não um hook\nde verdade: pode importar e usar em qualquer lugar, sem regra de hook.\n\nCada role de cor (`primary`, `secondary` etc.) tem 4 tons —\n`light`/`main`/`dark`/`contrastText`. `main` é pensado pra preencher\n(botão, chip, badge — sempre com `contrastText` em cima, já verificado em\nAA). Pra usar a cor como texto/ícone solto sobre o fundo padrão, use o tom\n`dark` (no modo claro) — ele é o único dos quatro garantido em AA (≥4.5:1)\ncontra o `background.default` em todos os combos.\n\nAo final, ele avisa:\n\n- Se faltam instalar `@mui/material`, `@emotion/react` ou `@emotion/styled`\n  (checa o `package.json` da pasta atual).\n- O snippet pra plugar o tema (`ThemeProvider` + `CssBaseline`).\n- O `<link>` da fonte escolhida (Google Fonts) pra colar no `<head>`.","readmeFilename":"README.md"}