TreeMap
A free, open-source disk-space visualizer. Squarified treemap, duplicate hunting, disk-full forecasting, and cleanup that only ever moves files to the Trash.
Gerador interno de assinaturas de e-mail da BRACCI
Translation pending
ProductivityTypeScript · CSSGitHub @XwiuuOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Gerador web interno de assinaturas de e-mail da BRACCI. O marketing preenche os dados pessoais, vê a prévia e copia a assinatura pronta para colar no Gmail/Outlook. Aplicação Next.js 100% client-side (apps/web): formulário, prévia em tempo real e cópia da assinatura/HTML. Não há backend, banco nem API.Read the full README ↗
Gerador web interno de assinaturas de e-mail da BRACCI. O marketing preenche os dados pessoais, vê a prévia e copia a assinatura pronta para colar no Gmail/Outlook.
Aplicação Next.js 100% client-side (apps/web): formulário, prévia em tempo real e cópia da assinatura/HTML. Não há backend, banco nem API.
cd apps/web
npm install
npm run dev # desenvolvimento: http://localhost:3000
Produção:
npm run build
npm start # http://localhost:3000
+55 54 99999-9999). O link wa.me usa só os dígitos digitados e não adivinha o país; sem DDI o link não funciona.@usuário ou URL completa. LinkedIn: URL completa (https://…).text/html + text/plain). Cole direto no editor de assinatura do Gmail/Outlook.Site e logo da BRACCI são fixos e não editáveis.
A cópia usa navigator.clipboard, que só funciona em HTTPS ou em localhost. Em HTTP comum, os botões mostram "Não foi possível copiar".
URL estável: https://web-ten-kohl-45.vercel.app. É o domínio de produção do projeto web na Vercel: não muda entre deploys e sempre serve o último deploy de produção (branch main, Root Directory apps/web). Não use URLs de preview/deploy (web-xxxxxxx-xwiuus-projects.vercel.app), que mudam a cada deploy e exigem login.
Iframe no portal: precisa da permissão de clipboard, senão "Copiar assinatura" falha dentro do iframe:
<iframe
src="https://web-ten-kohl-45.vercel.app"
allow="clipboard-write"
></iframe>
A assinatura usa URLs absolutas para os PNGs de apps/web/public/ (o Gmail descarta imagens em base64). A base é NEXT_PUBLIC_ASSET_BASE_URL (definida no build; hoje https://web-ten-kohl-45.vercel.app em Production e Preview na Vercel); sem ela, a origem onde o gerador está aberto. A cópia é bloqueada se essa base não for HTTPS pública (ex.: localhost), pois as imagens quebrariam no destinatário.
As assinaturas já geradas carregam as imagens desta URL a cada abertura do e-mail. Não remova, renomeie nem mova estes arquivos sem uma estratégia de compatibilidade (manter os caminhos antigos servindo):
https://web-ten-kohl-45.vercel.app/bracci-logo.pnghttps://web-ten-kohl-45.vercel.app/wave-edge.pnghttps://web-ten-kohl-45.vercel.app/icons/{instagram,facebook,linkedin,youtube,pinterest,whatsapp,phone,pin}.pngAlterar o conteúdo de um desses PNGs muda a aparência de todas as assinaturas já enviadas (respeitado o cache do proxy do Gmail).
cd apps/web
npm ci
npm run lint
npx tsc --noEmit
npm run build
apps/web aplicação Next.js (gerador)
docs/ documentação de arquitetura
Veja docs/architecture.md.