# _Melody.CLI - A next-generation music streaming experience in your terminal (Upcoming Project)_
![logo](https://github.com/pythonicforge/Melody.CLI/blob/main/assets/banner.png)
### _Project Overview_
_Welcome to Melody CLI, a versatile command-line music player that brings the power of YouTube to your terminal. Whether you're a developer looking to integrate music playback into your own applications or a music enthusiast who enjoys the simplicity of command-line tools, Melody CLI has you covered._
_With Melody CLI, you can easily search for songs on YouTube Music, download the audio, and play it directly from your terminal. The tool leverages the robust capabilities of yt-dlp for downloading and converting YouTube videos, ytmusicapi for interfacing with YouTube Music, and pygame for seamless audio playback._
_Our straightforward command-line interface ensures that navigating through the CLI is a breeze, making it accessible even to those who are new to command-line tools. Whether you're pausing, resuming, or stopping playback, Melody CLI provides intuitive controls to manage your listening experience._
_Join us in exploring the world of music through the command line. Melody CLI is open-source and welcomes contributions from the community, so feel free to get involved and help us improve this tool._
### _Why Melody.CLI ?_
_In a world dominated by graphical user interfaces, Melody.CLI offers a refreshing alternative. Designed for music enthusiasts who appreciate the elegance and efficiency of the command line, Melody.CLI provides a distraction-free, immersive music experience. Whether you're a developer seeking seamless music playback while coding, or a terminal aficionado, Melody.CLI is crafted to meet your needs._
### _Exciting Features to Look Forward To_
- _**Search Songs**: Find songs by title or artist using the YouTube Music API._
- _**Download Audio**: Download audio from YouTube videos and convert them to MP3._
- _**Play Music**: Play downloaded songs directly from the command line._
- _**Playback Controls**: Pause, resume, and stop playback using intuitive commands._
### _Installation_
_You can install Melody.CLI from PyPI:_
```sh
pip install melody_cli
```
### _Run Locally_
_Clone the project_
```bash
git clone https://github.com/pythonicforge/melody.CLI
```
_Go to the project directory_
```bash
cd melody.CLI
```
_Create a virtual environment_
```bash
pip install virtualenv
```
```bash
virtualenv env
```
_Install dependencies_
```bash
pip -r "requirements.txt"
```
### _Usage/Examples_
```python
from Melody_CLI import Player
if __name__ == '__main__':
player = Player()
searchQuery = input("Search for a song: ")
youtubeSearchResults, videoIDS = player.searchSong(searchQuery)
desiredVideo = int(input("Enter desired video number: "))
audioFile = player.downloadSong(videoIDS[desiredVideo])
player.playSong(audioFile)
```
### _Technical Highlights_
- _**YTMusicAPI:** Fetch songs and get search recommendations_
- _**Yt_DLP:** Download YT songs and store them locally._
- _**Pygame:** Playback and control the downloaded audio files._
### _Contributing_
_Contributions are always welcome!_
_Please adhere to this project's `code of conduct`._
_Stay tuned for Melody.CLI, an upcoming project that will redefine music streaming for the terminal generation. Melody.CLI is a testament to my skills in Python development, user-centric design, and my passion for creating innovative, real-world applications. Join me on this journey to bring a unique music streaming experience to life._
Raw data
{
"_id": null,
"home_page": "https://github.com/pythonicforge/melody.CLI",
"name": "Melody-CLI",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "music player python, music player cli, melody-cli",
"author": "Hardik Jaiswal",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/aa/b2/d92a7a7d766847957b8eb2b01e223c9f93976f927d8fef71fbe3f4d8a37c/melody_cli-0.0.2.tar.gz",
"platform": null,
"description": "# _Melody.CLI - A next-generation music streaming experience in your terminal (Upcoming Project)_\r\n\r\n![logo](https://github.com/pythonicforge/Melody.CLI/blob/main/assets/banner.png)\r\n\r\n### _Project Overview_\r\n_Welcome to Melody CLI, a versatile command-line music player that brings the power of YouTube to your terminal. Whether you're a developer looking to integrate music playback into your own applications or a music enthusiast who enjoys the simplicity of command-line tools, Melody CLI has you covered._\r\n\r\n_With Melody CLI, you can easily search for songs on YouTube Music, download the audio, and play it directly from your terminal. The tool leverages the robust capabilities of yt-dlp for downloading and converting YouTube videos, ytmusicapi for interfacing with YouTube Music, and pygame for seamless audio playback._\r\n\r\n_Our straightforward command-line interface ensures that navigating through the CLI is a breeze, making it accessible even to those who are new to command-line tools. Whether you're pausing, resuming, or stopping playback, Melody CLI provides intuitive controls to manage your listening experience._\r\n\r\n_Join us in exploring the world of music through the command line. Melody CLI is open-source and welcomes contributions from the community, so feel free to get involved and help us improve this tool._\r\n\r\n### _Why Melody.CLI ?_\r\n_In a world dominated by graphical user interfaces, Melody.CLI offers a refreshing alternative. Designed for music enthusiasts who appreciate the elegance and efficiency of the command line, Melody.CLI provides a distraction-free, immersive music experience. Whether you're a developer seeking seamless music playback while coding, or a terminal aficionado, Melody.CLI is crafted to meet your needs._\r\n\r\n### _Exciting Features to Look Forward To_\r\n\r\n- _**Search Songs**: Find songs by title or artist using the YouTube Music API._\r\n- _**Download Audio**: Download audio from YouTube videos and convert them to MP3._\r\n- _**Play Music**: Play downloaded songs directly from the command line._\r\n- _**Playback Controls**: Pause, resume, and stop playback using intuitive commands._\r\n\r\n### _Installation_\r\n\r\n_You can install Melody.CLI from PyPI:_\r\n\r\n```sh\r\npip install melody_cli\r\n```\r\n\r\n\r\n### _Run Locally_\r\n\r\n_Clone the project_\r\n\r\n```bash\r\n git clone https://github.com/pythonicforge/melody.CLI\r\n```\r\n\r\n_Go to the project directory_\r\n\r\n```bash\r\n cd melody.CLI\r\n```\r\n\r\n_Create a virtual environment_\r\n\r\n```bash\r\n pip install virtualenv\r\n```\r\n```bash\r\n virtualenv env\r\n```\r\n\r\n_Install dependencies_\r\n\r\n```bash\r\n pip -r \"requirements.txt\"\r\n```\r\n\r\n### _Usage/Examples_\r\n\r\n```python\r\nfrom Melody_CLI import Player\r\n\r\nif __name__ == '__main__':\r\n player = Player()\r\n searchQuery = input(\"Search for a song: \")\r\n youtubeSearchResults, videoIDS = player.searchSong(searchQuery)\r\n desiredVideo = int(input(\"Enter desired video number: \"))\r\n audioFile = player.downloadSong(videoIDS[desiredVideo])\r\n player.playSong(audioFile)\r\n\r\n```\r\n\r\n\r\n\r\n\r\n### _Technical Highlights_\r\n\r\n- _**YTMusicAPI:** Fetch songs and get search recommendations_\r\n- _**Yt_DLP:** Download YT songs and store them locally._\r\n- _**Pygame:** Playback and control the downloaded audio files._\r\n\r\n\r\n### _Contributing_\r\n\r\n_Contributions are always welcome!_\r\n_Please adhere to this project's `code of conduct`._\r\n\r\n_Stay tuned for Melody.CLI, an upcoming project that will redefine music streaming for the terminal generation. Melody.CLI is a testament to my skills in Python development, user-centric design, and my passion for creating innovative, real-world applications. Join me on this journey to bring a unique music streaming experience to life._\r\n",
"bugtrack_url": null,
"license": null,
"summary": "A command-line music player that downloads and plays music from YouTube.",
"version": "0.0.2",
"project_urls": {
"Homepage": "https://github.com/pythonicforge/melody.CLI"
},
"split_keywords": [
"music player python",
" music player cli",
" melody-cli"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5f7b9644e552a0e161627aa9a10dd2b5f4e70ad25ade2796d743c3bf354c95bc",
"md5": "6e90cd7a73237a522c71b402da7f9e20",
"sha256": "cdcae268c34311499a83410b60b3dd6723d4b7df726e2b8c0d36481c2fb78599"
},
"downloads": -1,
"filename": "Melody_CLI-0.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6e90cd7a73237a522c71b402da7f9e20",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 5529,
"upload_time": "2024-05-24T04:32:54",
"upload_time_iso_8601": "2024-05-24T04:32:54.871755Z",
"url": "https://files.pythonhosted.org/packages/5f/7b/9644e552a0e161627aa9a10dd2b5f4e70ad25ade2796d743c3bf354c95bc/Melody_CLI-0.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aab2d92a7a7d766847957b8eb2b01e223c9f93976f927d8fef71fbe3f4d8a37c",
"md5": "c9d5a000ea684efd00af3b0c14f3e1f3",
"sha256": "11c3db52a93b4ef28476c747efe99df566c563ff001cb579c06c7e43978511c2"
},
"downloads": -1,
"filename": "melody_cli-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "c9d5a000ea684efd00af3b0c14f3e1f3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 5419,
"upload_time": "2024-05-24T04:32:56",
"upload_time_iso_8601": "2024-05-24T04:32:56.575691Z",
"url": "https://files.pythonhosted.org/packages/aa/b2/d92a7a7d766847957b8eb2b01e223c9f93976f927d8fef71fbe3f4d8a37c/melody_cli-0.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-24 04:32:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "pythonicforge",
"github_project": "melody.CLI",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "melody-cli"
}