Velas de Oração
Mural virtual de velas: cada visitante com um token de acesso acende uma vela (nome + intenção + categoria + duração + privacidade) e ela aparece no mural da comunidade até expirar. Qualquer pessoa pode criar seu próprio mural com um código privado e distribuir por link de convite — cada mural é isolado, só quem tem o código vê as velas daquele grupo.
Reconstruído a partir de um export de app Lovable/TanStack
Start em Supabase, o projeto foi re-plataformado pra rodar 100%
self-hosted na minha VPS. A moderação por IA foi
substituída por um modelo de access token (o admin roda a
rotação); tudo é configurável no painel /admin:
categorias com cor/imagem/duração, tokens de campanha, senha, gate
on/off. Cada vela ganha um link próprio /c/:id com
miniatura OG gerada dinamicamente (SVG→PNG via sharp)
para compartilhamento no WhatsApp/LinkedIn/etc.
Stack de duas camadas em Docker: um container web
(nginx + SPA Vite/React/TypeScript) e um container api
(Fastify + better-sqlite3 + SSE, sem porta pública). O
banco SQLite fica num volume isolado montado só no api. Segurança:
senha do admin em bcrypt, JWT em cookie HttpOnly, rate
limits, dois honeypots CSS distintos nos formulários,
validação Zod, IPs armazenados como HMAC, container
hardening (no-new-privileges, rootfs
read-only no api, non-root).