Современный веб-плеер для прослушивания подкастов с возможностью поиска, гибкого управления воспроизведением и динамической кастомизацией тем.
Приложение развёрнуто и доступно в режиме онлайн:
👉 https://jokutrx.github.io/podflow/
- ⏯️ Полноценный аудиоконтроль: Плавное воспроизведение, пауза, навигация по треку (seek) и точная настройка громкости.
- ⏩ Быстрая перемотка: Кнопки быстрого пропуска (
-10 секи+30 сек) с адаптивными векторными и PNG-иконками. - ⚡️ Регулировка скорости: Выбор скорости воспроизведения (0.8x, 1.0x, 1.25x, 1.5x, 2.0x).
- 🎨 Динамическая темизация: Полная синхронизация акцентных цветов всех UI-элементов и иконок через CSS-маски и
themeStore. - 🎯 Интерактивные иконки: Кастомная система отображения графики с подстройкой под текущий цвет интерфейса.
- 🛡 Строгая типизация: Полная поддержка TypeScript без необработанных типов.
- Core: Vue 3 (
<script setup>, Composition API), TypeScript, Vite - State Management: Pinia (
playerStore,themeStore) - Package Manager: pnpm
- UI & Styling: Tailwind CSS,
@tailwindcss/vite, Radix Vue / shadcn-vue - Icons: Lucide Vue Next, Custom SVG & PNG Masks
- Deployment: GitHub Actions (
github-pages)
Проект структурирован по методологии Feature-Sliced Design, что обеспечивает понятное разделение ответственности и лёгкую масштабируемость:
src/
├── app/ # Инициализация приложения, глобальные стили, провайдеры
├── pages/ # Страницы приложения (Главная, Плеер, Поиск)
├── widgets/ # Составные блоки интерфейса (BottomPlayer, Header)
├── features/ # Пользовательские фичи (Поиск, Переключение тем)
├── entities/ # Бизнес-сущности (Эпизоды подкастов, playerStore)
└── shared/ # Переиспользуемые ресурсы, UI-кит (Button, Slider, SkipButton, themeStore, icons/)
⚡️ Быстрый старт Требования Node.js: >= 20.0.0
Пакетный менеджер: pnpm (рекомендуется) / npm
Установка и запуск локально Клонируйте репозиторий:
Bash git clone https://github.com/jokutRX/podflow.git cd podflow Установите зависимости:
Bash pnpm install Запустите сервер для разработки:
Bash pnpm dev Приложение откроется по адресу http://localhost:5173/podflow/.
Сборка для продакшена:
Bash pnpm build