Desktop аудиоплеер, реализованный на Java 17 + JavaFX 21
Проект демонстрирует чистую архитектуру, разделение слоёв и production-сборку через jlink + jpackage.
Current version: 1.0.0
Скачать portable Windows build: https://github.com/maxim618/playmy/releases
- Native Windows launcher
- Custom Java runtime (jlink)
- App-image packaging (jpackage)
- Versioned artifact:
PlayMy-1.0.0-windows.zip
- Воспроизведение MP3 / WAV
- Play / Pause / Stop
- Перемотка
- Регулировка громкости
- Управление плейлистом
- Отображение метаданных (название, автор, альбом)
- Поддержка обложек (если присутствуют в файле)
Проект построен по принципу разделения ответственности между слоями.
- FXML + контроллеры
- Только взаимодействие с пользователем
- Без бизнес-логики
- Инкапсуляция
MediaиMediaPlayer - Управление состоянием воспроизведения
- Обработка смены треков
- Управление списком треков
- Навигация
- Хранение текущего состояния
- Чтение метаданных аудиофайлов
- Работа с embedded обложками
- Java 17
- JavaFX 21 (external modules)
- Maven
- jlink (custom runtime)
- jpackage (native packaging)
- GitHub Actions (CI)
Run in development mode:
mvn clean javafx:run
- MIT License
