Sobre o projeto
Void Presence Web funciona como o hub central do ecossistema Void Presence, um gerenciador de Discord Rich Presence para Windows. Construída com Next.js 16 (App Router), React 19, TypeScript e SCSS, a aplicação oferece uma interface refinada para usuários finais descobrirem e gerenciarem personalizações de presença sem escrever código.
Os principais recursos para usuários incluem:
- Navegador de configurações com busca, filtragem, cartões de pré-visualização ao vivo e download de JSON ou cópia para a área de transferência com um clique
- Navegador de status para ciclos de status personalizados do Discord com pré-visualizações
- Registro de plugins com instalação em um clique via deep links (`voidpresence://install-plugin?url=…`)
- Documentação completa de desenvolvimento de plugins em `/plugins/docs`
- Páginas de perfil exibindo configurações enviadas e IDs de autor para sincronização na nuvem
- Autenticação OAuth via Discord e Steam com next-auth v5
- API REST pública (v0 e v1) para configurações, autores e análises
- Página de cronograma de lançamentos com gráficos de estatísticas de download gerados pelo Recharts
A stack tecnológica enfatiza práticas modernas de frontend: Firebase para armazenamento de configurações e perfis, Upstash Redis para armazenamento de sessões, Vercel para hospedagem e análises, e um sistema de design SCSS personalizado sem framework de UI. Um script automatizado de geração de manifesto (`npm run build:manifest`) agrega metadados de plugins do diretório `plugins/` em um arquivo JSON consumível.
Em termos de segurança, a plataforma armazena apenas dados de configuração de presença (pares de botões, ciclos de status/imagens, títulos, descrições, timestamps, contadores de download e nomes de exibição de autores) e evita explicitamente armazenar tokens do Discord, senhas, chaves OAuth, mensagens pessoais ou dados do sistema.
Desenvolvedores podem executar o projeto localmente com `npm install && npm run dev`. O pipeline de build (`npm run build`) regenera o manifesto de plugins antes do build de produção do Next.js. Variáveis de ambiente para Firebase, Redis, NextAuth e Steam são configuradas via `.env.local`.
A publicação de plugins segue um fluxo simples de PR: adicione um arquivo `.js` ou pasta sob `plugins/` com metadados obrigatórios (`author`, `description`, `tags`, `preview.slides`), abra um pull request e, após o merge, o manifesto é reconstruído automaticamente, exibindo o plugin em `/plugins` com um botão de instalação.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.