# Term-Music
**still in development**
Terminal music player with audio visualization and youtube-dl integration.
![](https://github.com/tracksuitdev/term-music/blob/master/assets/term-music.gif?raw=true)
## Installation
Install using pip `pip install term-music`. After installation, you can run `term-music`.
At first run, the program will create a folder called `.term-music` in your home directory with config.ini file with
default settings. You can change the settings in the config file to your liking.
Also in the `.term-music` directory
there will be a `music-lib` folder where all your songs will be downloaded to. You can change this by changing the
`download_folder` setting in the config file.
## Usage
Inside your download folder all .mp3 files will be considered as songs and all .txt files will be considered as
playlists.
Playlist files should be text files with each line containing the name of a song (without extension) that is in your library.
```
usage: music [-h] [-v] {play,playall,playlist,ls,load} ...
positional arguments:
{play,playall,playlist,ls,load}
play play a song
playall play all songs or playlists
playlist play playlist
ls list songs
load download a list of songs
options:
-h, --help show this help message and exit
-v, --version show program's version number and exit
```
### play
```
usage: music play [-h] [-e] [-nd] query [query ...]
positional arguments:
query query used to search the library or youtube for the song
to play
options:
-h, --help show this help message and exit
-e, --exact only use exact matches to play a song from library, will
not search youtube or download a song
-nd, --nodownload don't search youtube and download the song if none is
found in library
```
### playall
```
usage: music playall [-h] [{songs,playlists}]
positional arguments:
{songs,playlists}
options:
-h, --help show this help message and exit
```
### playlist
```
usage: music playlist [-h] [-e] query
positional arguments:
query query used to search the library for a playlist to play
options:
-h, --help show this help message and exit
-e, --exact only play a playlist if exact match is found
```
### ls
```
usage: music ls [-h] [-a] [-p] [-f]
options:
-h, --help show this help message and exit
-a, --all list all songs and playlists
-p, --playlist list only playlists
-f, --full list all songs with playlists they are on
```
### load
```
usage: music load [-h] [-p PLAYLIST] [-c] songs [songs ...]
positional arguments:
songs list of songs to download in music library
options:
-h, --help show this help message and exit
-p PLAYLIST, --playlist PLAYLIST
name of the playlist that will be made out of
downloaded songs
-c, --check if true will check if song already exists and won't
download it
```
Raw data
{
"_id": null,
"home_page": "",
"name": "term-music",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.7.0",
"maintainer_email": "",
"keywords": "terminal,music,player,library,youtube-dl",
"author": "tracksuitdev",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/92/cd/87c9198702e734002d8d3e0abfceb5ada9dd9d2d367859d695c838a8d006/term-music-0.2.1.tar.gz",
"platform": null,
"description": "# Term-Music \n\n**still in development**\n\nTerminal music player with audio visualization and youtube-dl integration.\n\n![](https://github.com/tracksuitdev/term-music/blob/master/assets/term-music.gif?raw=true)\n\n## Installation\n\nInstall using pip `pip install term-music`. After installation, you can run `term-music`.\n\nAt first run, the program will create a folder called `.term-music` in your home directory with config.ini file with\ndefault settings. You can change the settings in the config file to your liking. \n\nAlso in the `.term-music` directory\nthere will be a `music-lib` folder where all your songs will be downloaded to. You can change this by changing the\n`download_folder` setting in the config file.\n\n## Usage\n\nInside your download folder all .mp3 files will be considered as songs and all .txt files will be considered as \nplaylists.\n\nPlaylist files should be text files with each line containing the name of a song (without extension) that is in your library.\n\n\n```\nusage: music [-h] [-v] {play,playall,playlist,ls,load} ...\n\npositional arguments:\n {play,playall,playlist,ls,load}\n play play a song\n playall play all songs or playlists\n playlist play playlist\n ls list songs\n load download a list of songs\n\noptions:\n -h, --help show this help message and exit\n -v, --version show program's version number and exit\n```\n\n### play\n\n```\nusage: music play [-h] [-e] [-nd] query [query ...]\n\npositional arguments:\n query query used to search the library or youtube for the song\n to play\n\noptions:\n -h, --help show this help message and exit\n -e, --exact only use exact matches to play a song from library, will\n not search youtube or download a song\n -nd, --nodownload don't search youtube and download the song if none is\n found in library\n\n```\n\n### playall\n\n```\nusage: music playall [-h] [{songs,playlists}]\n\npositional arguments:\n {songs,playlists}\n\noptions:\n -h, --help show this help message and exit\n```\n\n### playlist\n\n```\nusage: music playlist [-h] [-e] query\n\npositional arguments:\n query query used to search the library for a playlist to play\n\noptions:\n -h, --help show this help message and exit\n -e, --exact only play a playlist if exact match is found\n```\n\n### ls\n\n```\nusage: music ls [-h] [-a] [-p] [-f]\n\noptions:\n -h, --help show this help message and exit\n -a, --all list all songs and playlists\n -p, --playlist list only playlists\n -f, --full list all songs with playlists they are on\n```\n\n### load\n\n```\nusage: music load [-h] [-p PLAYLIST] [-c] songs [songs ...]\n\npositional arguments:\n songs list of songs to download in music library\n\noptions:\n -h, --help show this help message and exit\n -p PLAYLIST, --playlist PLAYLIST\n name of the playlist that will be made out of\n downloaded songs\n -c, --check if true will check if song already exists and won't\n download it\n```\n",
"bugtrack_url": null,
"license": "",
"summary": "A music player for the terminal",
"version": "0.2.1",
"project_urls": {
"Homepage": "https://github.com/tracksuitdev/term-music",
"Source": "https://github.com/tracksuitdev/term-music"
},
"split_keywords": [
"terminal",
"music",
"player",
"library",
"youtube-dl"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1746cefb463fc6429daf5237d0a9b17202a1881d38f33d81034f33cb2550c3da",
"md5": "179dfcb7af72a55bdf69c50b788fbb41",
"sha256": "3ca112c7aaf3fb0fa60381b8780630c620029cb09bd23dd3765d7bd97ea6a747"
},
"downloads": -1,
"filename": "term_music-0.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "179dfcb7af72a55bdf69c50b788fbb41",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7.0",
"size": 14104,
"upload_time": "2023-05-16T22:00:44",
"upload_time_iso_8601": "2023-05-16T22:00:44.922102Z",
"url": "https://files.pythonhosted.org/packages/17/46/cefb463fc6429daf5237d0a9b17202a1881d38f33d81034f33cb2550c3da/term_music-0.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "92cd87c9198702e734002d8d3e0abfceb5ada9dd9d2d367859d695c838a8d006",
"md5": "4423c621d54fdd0d25f0e7dc45d7eaff",
"sha256": "b747c6cb4c392b97ca9c490a8f43f62e7b002bc0d8c40d52f124bb8d57a1b2ce"
},
"downloads": -1,
"filename": "term-music-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "4423c621d54fdd0d25f0e7dc45d7eaff",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7.0",
"size": 12278,
"upload_time": "2023-05-16T22:00:50",
"upload_time_iso_8601": "2023-05-16T22:00:50.258700Z",
"url": "https://files.pythonhosted.org/packages/92/cd/87c9198702e734002d8d3e0abfceb5ada9dd9d2d367859d695c838a8d006/term-music-0.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-16 22:00:50",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "tracksuitdev",
"github_project": "term-music",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "term-music"
}