Об этом проекте

Void Presence Web служит центральным узлом экосистемы Void Presence — менеджера Discord Rich Presence для Windows. Приложение, созданное на Next.js 16 (App Router), React 19, TypeScript и SCSS, предоставляет удобный интерфейс для конечных пользователей, позволяя им находить и управлять настройками присутствия без написания кода. Ключевые пользовательские функции включают: - Браузер конфигураций с поиском, фильтрацией, карточками живого предпросмотра и загрузкой JSON в один клик или копированием в буфер обмена - Браузер статусов для пользовательских циклов статусов Discord с предпросмотром - Реестр плагинов с установкой в один клик через глубокие ссылки (`voidpresence://install-plugin?url=…`) - Полная документация по разработке плагинов на `/plugins/docs` - Страницы профилей с загруженными конфигурациями и идентификаторами авторов для облачной синхронизации - Аутентификация OAuth через Discord и Steam с помощью next-auth v5 - Публичный REST API (v0 и v1) для конфигураций, авторов и аналитики - Страница расписания релизов с графиками статистики загрузок на базе Recharts Технологический стек подчеркивает современные практики фронтенда: Firebase для хранения конфигураций и профилей, Upstash Redis для хранения сессий, Vercel для хостинга и аналитики, а также собственная дизайн-система на SCSS без использования UI-фреймворков. Автоматизированный скрипт генерации манифеста (`npm run build:manifest`) собирает метаданные плагинов из каталога `plugins/` в потребляемый JSON-файл. С точки зрения безопасности, платформа хранит только данные конфигурации присутствия (пары кнопок, циклы статусов/изображений, заголовки, описания, временные метки, счетчики загрузок и отображаемые имена авторов) и явно избегает хранения токенов Discord, паролей, ключей OAuth, личных сообщений или системных данных. Разработчики могут запустить проект локально с помощью `npm install && npm run dev`. Конвейер сборки (`npm run build`) перегенерирует манифест плагинов перед продакшн-сборкой Next.js. Переменные окружения для Firebase, Redis, NextAuth и Steam настраиваются через `.env.local`. Публикация плагинов следует простому рабочему процессу через PR: добавьте файл `.js` или папку в `plugins/` с обязательными метаданными (`author`, `description`, `tags`, `preview.slides`), откройте pull request, и после слияния манифест пересоберется автоматически, отобразив плагин на `/plugins` с кнопкой установки.