Skip to content

maxim618/playmy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java JavaFX Build CI Version License

PlayMy - JavaFX Audio Player

Desktop аудиоплеер, реализованный на Java 17 + JavaFX 21
Проект демонстрирует чистую архитектуру, разделение слоёв и production-сборку через jlink + jpackage.


Release

Current version: 1.0.0

Скачать portable Windows build: https://github.com/maxim618/playmy/releases

Distribution includes:

  • Native Windows launcher
  • Custom Java runtime (jlink)
  • App-image packaging (jpackage)
  • Versioned artifact: PlayMy-1.0.0-windows.zip

Features

  • Воспроизведение MP3 / WAV
  • Play / Pause / Stop
  • Перемотка
  • Регулировка громкости
  • Управление плейлистом
  • Отображение метаданных (название, автор, альбом)
  • Поддержка обложек (если присутствуют в файле)

Architecture

Проект построен по принципу разделения ответственности между слоями.

UI Layer (JavaFX)

  • FXML + контроллеры
  • Только взаимодействие с пользователем
  • Без бизнес-логики

Player Logic

  • Инкапсуляция Media и MediaPlayer
  • Управление состоянием воспроизведения
  • Обработка смены треков

Playlist Management

  • Управление списком треков
  • Навигация
  • Хранение текущего состояния

Metadata Handling

  • Чтение метаданных аудиофайлов
  • Работа с embedded обложками

Tech Stack

  • Java 17
  • JavaFX 21 (external modules)
  • Maven
  • jlink (custom runtime)
  • jpackage (native packaging)
  • GitHub Actions (CI)

Development

Run in development mode:

mvn clean javafx:run

License

  • MIT License

About

A simple JavaFX audio player. Supports track playback and playlist management.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors