"Não queremos que o utilizador fique viciado, queremos que ele se sinta nutrido."
O Catarse é uma rede social alternativa fundada nos princípios de Slow Tech e economia de atenção consciente. Diferente das redes tradicionais desenhadas para retenção infinita e estímulo dopaminérgico, o Catarse estimula interações com propósito, cultivo da saúde mental, apoio comunitário e desaceleração digital.
A aplicação é construída com arquitetura Monorepo (pnpm + Turbo + Next.js 16 App Router), Supabase Cloud (PostgreSQL + RLS + Realtime), Docker e moderação inteligente por IA (Sentinela).
- Canais de Texto e Voz Granulares: Suporte a canais de acesso Público, Privado (restrito por cargo) e Exclusivo Staff.
- Mural de Avisos (Átrio): Espaço dedicado a anúncios oficiais da comunidade com permissões de publicação.
- Enquetes de Votação (CRUD): Criação de enquetes interativas com múltiplas opções, controle de tempo de expiração e barras percentuais em tempo real.
- Gestão Avançada de Cargos & Permissões:
- Personalização de nome, cor hexadecimal e ícones temáticos (Shield, Crown, Star, Flame, Zap, Award, Heart, Sparkles).
- Permissões chaveáveis: acesso a canais privados, gestão de apelidos, aprovação de pedidos de adesão, expulsão, silenciamento (mute) e banimento.
- Moderação Completa de Chat & Membros:
- Exclusão e alteração persistente de mensagens via PostgREST + RLS no Supabase.
- Fixação e destaque de mensagens no canal.
- Apelidos personalizados por grupo.
- Silenciamento Temporário (Mute): Restrição de publicação no grupo por tempo determinado.
- Banimento Permanente: Revogação de acesso com ocultação do grupo no perfil e pesquisas públicas.
Filtragem e moderação em 5 camadas:
- Camada 1: Heurística Local ($0) — Entropia de texto, regex e detecção de spam em código puro TypeScript.
- Camada 2: Cache Semântico ($0) — Respostas e mentorias pré-armazenadas no banco Supabase.
- Camada 3: Motor Groq LPU / Ollama Local — Moderação rápida e de baixo custo (
llama-3.1-8b-instantoudeepseek-v2:litelocal). - Mentoria de Catarse — Guia inspirador que sugere expansões para desabafos e contribuições curtas.
- Frontend & App Web: Next.js 16 (App Router, Turbopack, React 19, TailwindCSS, Lucide Icons).
- Arquitetura de Software: Monorepo com DDD (Domain-Driven Design), Clean Architecture e MVVM (
packages/domain,packages/application,packages/infrastructure,apps/web). - Banco de Dados & Autenticação: Supabase Cloud (PostgreSQL 15+, Row Level Security RLS, Realtime Subscriptions, Storage Buckets).
- Motor de IA: Groq LPU API / Ollama Local.
- Containerização & CI/CD: Docker (multi-stage build standalone) + GitHub Actions.
catarse/
├── apps/
│ └── web/ # Aplicação Next.js 16 (UI, Views, ViewModels, Server Actions)
├── packages/
│ ├── domain/ # Entidades, Schemas Zod, Interfaces de Repositório
│ ├── application/ # Casos de Uso (Use Cases) e Regras de Negócio Pure TS
│ └── infrastructure/ # Implementações Supabase, Repositórios e Serviços Externos
├── supabase/
│ └── migrations/ # Migrações versionadas SQL enviadas via Supabase CLI
└── docker-compose.yml # Configuração Docker para desenvolvimento e execução standalone
- Node.js >= 20.x
- pnpm >= 9.x
- Docker & Docker Compose (opcional)
git clone https://github.com/LuizCorrea-Dev/catarse.git
cd catarse
pnpm installCopie .env.example para .env na raiz e em apps/web/.env.local:
NEXT_PUBLIC_SUPABASE_URL=https://<sua-instancia>.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=<sua-anon-key>
SUPABASE_SERVICE_ROLE_KEY=<sua-service-role-key>
GROQ_API_KEY=<sua-groq-key>pnpm devAcesse a aplicação no navegador em http://localhost:3000.
pnpm --filter web buildPara rodar a aplicação em contêineres:
# Subir contêineres em segundo plano
docker compose up -d
# Reconstruir imagens e iniciar
docker compose up --build -d
# Parar contêineres
docker compose downO Catarse não promete felicidade instantânea. Promete espaço.
Aqui, não precisas de atuar ou performar. Existir e partilhar a tua verdade já é o suficiente. 🌿