Об этом проекте
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` с кнопкой установки.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.