Pular para o conteúdo
Ecossistema Anahê · 04/05admin.anahe.com.br

Anahê · Painel

Um painel para três sites.

Papel
Design System & Full-stack
Ano
2026
Status
No ar

— Ecossistema

Quatro apps, uma API

Anahê Canavezzi é escritora e designer. Ela precisava de três sites públicos (o do livro, o do estúdio e o blog) e de um painel para cuidar de tudo sem depender de mim. Montei os quatro apps Next.js num monorepo com Turborepo e pnpm, servidos por uma única API NestJS e um único banco.

Decisão de arquitetura

Considerei micro-frontends e descartei: não há vários times nem composição em runtime. São quatro sites que compartilham design system, tipos e schemas, que é o caso de uso do Turborepo.

PostgreSQL · Redis · R2Railway · Cloudflare

Um painel e uma API cuidam do conteúdo dos três sites públicos.

— A história

Como construí cada parte

Capítulo 01Login · Dashboard

Entrar e ver o que aconteceu

O painel chama a API pelo próprio /api, então os cookies de sessão ficam só no domínio do painel e nunca chegam aos sites públicos. O segundo passo do login é um código por e-mail ou um app autenticador. O dashboard mostra o analytics próprio dos três sites, sem script de terceiros.

admin.anahe.com.br
  • Cookies httpOnly e SameSite=Strict
  • Analytics sem cookies e sem IP gravado

Capítulo 02Posts · Editor

Um editor, dois destinos

O editor usa Tiptap e mostra o texto com o mesmo estilo que ele terá no site (Editorial, Ensaio ou Visual). Na hora de publicar, a pergunta é "Onde publicar": Blog ou Escritos.

admin.anahe.com.br
  • Rascunho salvo automaticamente
  • Imagens sobem direto para o storage, por URL pré-assinada

Capítulo 03Escritora · Estúdio · Portfólio

Toda lista do site tem cadastro

Lojas, serviços, etapas, clientes, depoimentos: tudo segue o mesmo padrão. Busca, lista ordenável por arrastar, interruptor "mostrar no site" e edição numa gaveta lateral. Os cases, mais longos, abrem um editor de página inteira.

admin.anahe.com.br
  • dnd-kit com prévia inclinada e semitransparente
  • Reordenar também com as setas do teclado

Capítulo 04Leads · Briefings · Mídia

Quem chegou pelos sites

Contatos e orçamentos chegam em Leads, num kanban de arrastar entre etapas, e a resposta ao cliente é escrita e enviada por e-mail de dentro do painel. Briefings, comentários à espera de moderação e a biblioteca de mídia dos três sites ficam no mesmo lugar.

admin.anahe.com.br
  • E-mails em fila no BullMQ, com novas tentativas
  • Mídia sem EXIF e GPS, com blur gerado no upload

Capítulo 05Configurações · Conta

Idioma, tema e tour

O menu da conta fica no pé do menu lateral: idioma (português ou inglês), tema claro ou escuro e sair. O tema escuro é um marrom quente, nunca preto puro, e um tour guiado apresenta o painel na primeira vez.

admin.anahe.com.br
  • Painel em português e inglês
  • Tour guiado na primeira vez

— Tecnologias

Front

  • Next.js 16
  • TanStack Query
  • React Hook Form
  • Zod
  • next-intl

UI

  • shadcn/ui
  • Radix
  • Tiptap
  • dnd-kit
  • TanStack Table

Monorepo

  • Turborepo
  • pnpm workspaces

API

  • NestJS 11
  • Prisma 7
  • PostgreSQL 18
  • Redis 7 · BullMQ

Infra

  • Vercel
  • Railway
  • Cloudflare
  • R2