{"id":23954516,"url":"https://github.com/WillKirkmanM/music","last_synced_at":"2025-09-12T13:31:25.718Z","repository":{"id":242429060,"uuid":"778388578","full_name":"WillKirkmanM/music","owner":"WillKirkmanM","description":"ParsonLabs Music is the Self Hosted Audio streaming alternative to YouTube Music, Spotify \u0026 Apple Music, providing Unrestricted Access to your library in Uncompressed, Lossless Quality — Head to https://music.parson.dev to get started.","archived":false,"fork":false,"pushed_at":"2025-08-25T12:22:02.000Z","size":12196,"stargazers_count":119,"open_issues_count":0,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-08-25T14:30:01.623Z","etag":null,"topics":["hacktoberfest","lossless","music","rust","self-hosted"],"latest_commit_sha":null,"homepage":"https://try.parson.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WillKirkmanM.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-03-27T16:19:07.000Z","updated_at":"2025-08-25T12:22:06.000Z","dependencies_parsed_at":"2024-06-26T23:15:14.867Z","dependency_job_id":"b96336ff-acb4-4149-8a02-e121171e0942","html_url":"https://github.com/WillKirkmanM/music","commit_stats":{"total_commits":1444,"total_committers":1,"mean_commits":1444.0,"dds":0.0,"last_synced_commit":"dc982291a8751dbdc8952da9d3896d2435fd41e2"},"previous_names":["willkirkmanm/music"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/WillKirkmanM/music","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillKirkmanM%2Fmusic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillKirkmanM%2Fmusic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillKirkmanM%2Fmusic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillKirkmanM%2Fmusic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WillKirkmanM","download_url":"https://codeload.github.com/WillKirkmanM/music/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillKirkmanM%2Fmusic/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274821255,"owners_count":25356251,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-12T02:00:09.324Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest","lossless","music","rust","self-hosted"],"created_at":"2025-01-06T15:01:01.695Z","updated_at":"2025-09-12T13:31:25.709Z","avatar_url":"https://github.com/WillKirkmanM.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\r\n  \u003cimg src=\"https://avatars.githubusercontent.com/u/138057124?s=200\u0026v=4\" /\u003e\r\n\u003c/p\u003e\r\n\u003ch1 align=\"center\"\u003eParsonLabs Music\u003c/h1\u003e\r\n\r\n\u003cp align=\"center\"\u003e\r\n  \u003cimg src=\"https://www.pwa-shields.com/1.0.0/series/certified/purple.svg\" alt=\"PWA Shields\" height=\"20\"\u003e\r\n\u003c/p\u003e\r\n\r\n\u003ch4 align=\"center\"\u003e\r\n  \u003ca href=\"#get-started\"\u003eInstall\u003c/a\u003e\r\n  ·\r\n  \u003ca href=\"https://docs.parsonlabs.com/\"\u003eDocumentation\u003c/a\u003e\r\n  ·\r\n  \u003ca href=\"https://github.com/WillKirkmanM/music/releases\"\u003eReleases\u003c/a\u003e\r\n\u003c/h4\u003e\r\n\r\n\u003cp align=\"center\"\u003eParsonLabs Music is the Self Hosted Audio streaming alternative to YouTube Music, Spotify \u0026 Apple Music, providing Unrestricted Access to your library in Uncompressed, Lossless Quality\u003c/p\u003e\r\n\r\n\u003cimg width=\"1280\" alt=\"Home Page\" src=\"https://github.com/user-attachments/assets/24ac1681-30e3-4570-9501-e0faab259bd9\" /\u003e\r\n\u003cimg width=\"1280\" alt=\"Album Showcase\" src=\"https://github.com/user-attachments/assets/361b7f64-cee3-4571-a7ff-b12718476a70\" /\u003e\r\n\u003cimg width=\"1280\" alt=\"image\" src=\"https://github.com/user-attachments/assets/ad58933c-f4c6-4e48-9189-2a9a56d4f2f9\" /\u003e\r\n\r\n\r\n## Get Started\r\n\r\n### Docker\r\n\r\n#### Docker Run\r\n```sh\r\ndocker run -d \\\r\n  --name parsonlabs-music \\\r\n  -p 1993:1993 \\\r\n  -v \"/path/to/config:/ParsonLabsMusic\" \\\r\n  -v \"/path/to/music:/music\" \\\r\n  --restart unless-stopped \\\r\n  ghcr.io/willkirkmanm/music\r\n```\r\n\r\n#### Docker Compose\r\n```yaml\r\nservices:\r\n  music-server:\r\n    image: ghcr.io/willkirkmanm/music\r\n    container_name: parsonlabs-music\r\n    ports:\r\n      - \"1993:1993\"\r\n    volumes:\r\n      - \"/path/to/config:/ParsonLabsMusic\"\r\n      - \"/path/to/music:/music\"\r\n    restart: unless-stopped\r\n```\r\n\r\n### Download Precompiled Binaries\r\n\r\nYou can download the precompiled binaries from the [releases page](https://github.com/WillKirkmanM/music/releases).\r\n\r\n- [Windows (x86_64)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-x86_64-pc-windows-gnu.zip)\r\n- [Linux (x86_64)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-x86_64-unknown-linux-gnu.tar.gz)\r\n- [Linux (x86_64 MUSL)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-x86_64-unknown-linux-musl.tar.gz)\r\n- [Linux (ARMv7 gnueabihf)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-armv7-unknown-linux-gnueabihf.tar.gz)\r\n- [Linux (ARMv7 MUSL)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-armv7-unknown-linux-musleabihf.tar.gz)\r\n- [Linux (ARM gnueabihf)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-arm-unknown-linux-gnueabihf.tar.gz)\r\n- [Linux (ARM MUSL)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-arm-unknown-linux-musleabihf.tar.gz)\r\n- [Linux (ARM64)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-aarch64-unknown-linux-gnu.tar.gz)\r\n- [Linux (ARM64 MUSL)](https://github.com/WillKirkmanM/music/releases/download/v1.6.0-alpha/music-server-aarch64-unknown-linux-musl.tar.gz)\r\n\r\n### Compile From Source\r\n\r\n### One Liner\r\n```\r\ngit clone https://github.com/WillKirkmanM/music \u0026\u0026 cd music \u0026\u0026 OS=$(uname -s) \u0026\u0026 if [ \"$OS\" = \"Linux\" ]; then if [ -f /etc/debian_version ]; then sudo apt-get update \u0026\u0026 sudo apt-get install -y --no-install-recommends sqlite3 libsqlite3-dev wget make build-essential pkg-config libssl-dev unzip \u0026\u0026 wget https://www.nasm.us/pub/nasm/releasebuilds/2.16/nasm-2.16.tar.gz \u0026\u0026 tar xzf nasm-2.16.tar.gz \u0026\u0026 cd nasm-2.16 \u0026\u0026 ./configure \u0026\u0026 make \u0026\u0026 sudo make install \u0026\u0026 cd .. \u0026\u0026 rm -rf nasm-2.16 nasm-2.16.tar.gz \u0026\u0026 sudo apt-get install -y libssl1.1 \u0026\u0026 rm -rf /var/lib/apt/lists/* \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn; elif [ -f /etc/arch-release ]; then sudo pacman -Syu --noconfirm sqlite wget make base-devel pkgconf openssl nasm unzip \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn; elif [ -f /etc/fedora-release ]; then sudo dnf install -y sqlite sqlite-devel wget make gcc gcc-c++ kernel-devel pkgconf-pkg-config openssl-devel nasm unzip \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn; elif [ -f /etc/gentoo-release ]; then sudo emerge --sync \u0026\u0026 sudo emerge --ask sqlite wget make gcc pkgconfig openssl nasm unzip \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn; else echo \"Unsupported Linux distribution\" \u0026\u0026 exit 1; fi; else echo \"Unsupported OS\" \u0026\u0026 exit 1; fi \u0026\u0026 bun run build --filter music \u0026\u0026 cargo build --package music-server --release \u0026\u0026 cargo run --package music-server --release\r\n```\r\n\r\n### Clone the Repository\r\n```\r\ngit clone https://github.com/WillKirkmanM/music\r\n```\r\n\r\n### Install Dependencies\r\n#### Ubuntu\r\n```\r\nsudo apt-get update \u0026\u0026 apt-get install -y --no-install-recommends sqlite3 libsqlite3-dev wget make build-essential pkg-config libssl-dev unzip \u0026\u0026 wget https://www.nasm.us/pub/nasm/releasebuilds/2.16/nasm-2.16.tar.gz \u0026\u0026 tar xzf nasm-2.16.tar.gz \u0026\u0026 cd nasm-2.16 \u0026\u0026 ./configure \u0026\u0026 make \u0026\u0026 make install \u0026\u0026 cd .. \u0026\u0026 rm -rf nasm-2.16 nasm-2.16.tar.gz \u0026\u0026 apt-get install -y libssl1.1 \u0026\u0026 rm -rf /var/lib/apt/lists/* \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn\r\n```\r\n#### Arch Linux\r\n```\r\nsudo pacman -Syu --noconfirm sqlite wget make base-devel pkgconf openssl nasm unzip \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn\r\n```\r\n#### Fedora\r\n```\r\nsudo dnf install -y sqlite sqlite-devel wget make gcc gcc-c++ kernel-devel pkgconf-pkg-config openssl-devel nasm unzip \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn\r\n```\r\n\r\n#### Gentoo\r\n```\r\nsudo emerge --sync \u0026\u0026 sudo emerge --ask sqlite wget make gcc pkgconfig openssl nasm unzip \u0026\u0026 curl -fsSL https://bun.sh/install | bash \u0026\u0026 export BUN_INSTALL=\"$HOME/.bun\" \u0026\u0026 export PATH=\"$BUN_INSTALL/bin:$PATH\" \u0026\u0026 bun install --global yarn\r\n```\r\n\r\n### Build the Website\r\n```\r\nbun run build --filter music \r\n```\r\n### Run the Server\r\n```\r\ncargo run --package music-server --release -- -p 1993\r\n```\r\n\r\n\u003e [!NOTE]  \r\n\u003e **Done! 🥳**.\r\n\u003e Head to [http://localhost:1993/](http://localhost:1993/) and setup your music library.\r\n\r\n## Documentation\r\n\u003cp align=\"center\"\u003e\r\n  Any additional troubleshooting information can be found in the Documentation https://docs.parsonlabs.com.\r\n\u003c/p\u003e\r\n\r\n![documentation](https://github.com/user-attachments/assets/94dd3cda-0a4b-4536-82b9-9d341360b8e1)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FWillKirkmanM%2Fmusic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FWillKirkmanM%2Fmusic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FWillKirkmanM%2Fmusic/lists"}