https://github.com/ivan-ayub97/radar-whisper
A music player application, designed with a clean, stylized aesthetic and a smooth experience.
https://github.com/ivan-ayub97/radar-whisper
gui music music-player music-visualizer mutagen pyqt pyqt5 pyqt5-desktop-application python python3
Last synced: 8 months ago
JSON representation
A music player application, designed with a clean, stylized aesthetic and a smooth experience.
- Host: GitHub
- URL: https://github.com/ivan-ayub97/radar-whisper
- Owner: Ivan-Ayub97
- License: mit
- Created: 2025-04-20T02:39:59.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-20T03:43:48.000Z (about 1 year ago)
- Last Synced: 2025-04-23T11:42:59.151Z (about 1 year ago)
- Topics: gui, music, music-player, music-visualizer, mutagen, pyqt, pyqt5, pyqt5-desktop-application, python, python3
- Language: Python
- Homepage:
- Size: 1.42 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

Version 0.9.0 (INCOMPLETE BETA)
> β οΈ **IMPORTANT:** Radar-Whisper is not ready for general use.
**Radar Whisper** is a modern and intuitive music player application, designed with a clean, stylized aesthetic and a smooth experience powered by **PyQt5**. Although it already has a functional foundation, this **0.9.0** version is still in development and includes **incomplete features**, as well as **bugs** and runtime errors. Therefore, it is recommended for **evaluation and testing purposes only**.
πͺπΈ [README en EspaΓ±ol](README_ES.md)
---
## β¨ Current Features
- π¨ **Customizable themes:** Supports light and dark modes.
- π΅ **Music playback:** Audio file support.
- β±οΈ **Interactive progress bar:** Scrollable for track time seeking.
- π **Volume control:** Slider with mute function.
- β―οΈ **Standard playback controls:** Play, pause, stop, next, previous, shuffle, and repeat (implemented but not functional).
- π **Drag-and-drop playlist:** Dynamically loads tracks, allows manual sorting.
- πΌοΈ **Track info panel:** Title, artist, duration, cover art (still being refined), and bitrate (also still being refined).
- π **Integrated search:** Dynamic track filtering.
---
## π Project Structure
```plaintext
Radar-Whisper/
β
βββ main.py # Main entry point of the application.
βββ main_window.py # Main window setup and display logic.
βββ ui_components.py # Definition of custom widgets and visual elements.
βββ playlist_manager.py # Logic for playlist management.
βββ metadata_handler.py # Reads, processes, and formats track metadata.
βββ audio_player.py # Core audio playback controller.
β
βββ icon.ico # App icon.
βββ icon.png # App icon.
βββ Banner.png # Graphic banner
βββ Capture.png # Screenshot (dark theme).
βββ Capture2.png # Screenshot (light theme).
βββ radar_animation.gif # Decorative animation.
β
βββ README.md # This document.
```
## π§ Development Status (Version 0.9.0)
| Component | Status | Notes |
| ----------------- | ------------- | -------------------------------------------------------- |
| Audio playback | π’ Functional | Limited to some formats. |
| Playlists | π‘ Partial | Persistence between sessions is missing. |
| GUI | π’ Functional | Basic aesthetics implemented, advanced settings pending. |
| Volume control | π’ Functional | No keyboard shortcuts yet. |
| Info panel | π΄ Incomplete | Displays limited metadata. Full integration pending. |
| Dark/Light mode | π‘ Partial | Requires manual restart. |
| General stability | π Unstable | May crash with corrupted files. |
---
## π» System Requirements
- Python 3.8+
- PyQt5
- Mutagen (for audio metadata handling)
- OS: Windows, Linux (partial), macOS (untested)
---
## π Installation and Running
### 1. Clone the repository
```bash
git clone https://github.com/Ivan-Ayub97/Radar-Whisper.git
cd radar-whisper
```
### 2. Create virtual environment (optional but recommended)
```bash
python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate.bat # Windows
```
### 4. Run the application
```bash
python main.py
```
---
## πΈ Screenshots
### Dark Theme

### Light Theme

---
## π§© Roadmap (Upcoming Versions)
- [ ] Error-free track repeat
- [ ] Full metadata integration (artist, album, genre, year)
- [ ] Support for multiple audio formats (OGG, M4A, etc.)
- [ ] Playlist persistence in local files
- [ ] Mini-player mode
- [ ] Floating player
- [ ] Full Linux support
---
## π€ Open Source Community Invitation
> This project is open to the community. Whether you're a developer, designer, tester, or simply curious to contributeβyou're welcome!
### Ways to contribute
- Report bugs by opening an [Issue](https://github.com/your-username/radar-whisper/issues)
- Improve incomplete features
- Refactor code
- Translate the interface
- Suggest UI improvements
- Share ideas in discussions
#### Recommendations
- Fork the repository
- Create a new branch with your feature
- Make a well-documented Pull Request
You donβt need to be an expert to contributeβevery improvement counts.
---
## β οΈ Known Issues / Limitations
- Track repeat shows a metadata handling error.
- Playing a new track requires stopping the previous one.
- The program may crash with unsupported audio files.
- Icons may not render correctly on Linux.
- No error handling for corrupted tracks.
- Playlists are not saved between sessions.
- Some UI features are not optimized for low resolutions.
---
## π License
This project is licensed under the **[MIT License](LICENSE)**. Feel free to use, modify, and distribute it.
---
## π€ Author
- **Lead Developer**: [Ivan E. C. Ayub](https://github.com/Ivan-Ayub97)
- **Contact**: (optional)
- **Technologies used**: Python 3, PyQt5, Mutagen
---
## π Acknowledgments
Thanks to the entire developer community that supports Open Source projects. Feel free to collaborate, share, fork, and improve this music player step by step.
---
## π― Why Radar Whisper?
Because we believe music deserves an elegant, free, and adaptable environment. Radar Whisper was born as a stylized alternative focused on user experience and open to collaborative evolution.
