{"id":13528330,"url":"https://github.com/Musish/Musish","last_synced_at":"2025-04-01T11:31:23.122Z","repository":{"id":39558272,"uuid":"159973040","full_name":"Musish/Musish","owner":"Musish","description":"Apple Music...ish ","archived":false,"fork":false,"pushed_at":"2024-09-22T17:09:03.000Z","size":21084,"stargazers_count":3066,"open_issues_count":173,"forks_count":223,"subscribers_count":53,"default_branch":"master","last_synced_at":"2024-10-29T15:34:35.883Z","etag":null,"topics":["apple","apple-music","music","musickit","musickitjs","react"],"latest_commit_sha":null,"homepage":"https://musi.sh","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Musish.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"open_collective":"musish"}},"created_at":"2018-12-01T18:07:45.000Z","updated_at":"2024-10-25T07:49:08.000Z","dependencies_parsed_at":"2023-01-25T22:01:42.938Z","dependency_job_id":"a9e97c95-2f4b-4b8d-b4c1-0007812e7da0","html_url":"https://github.com/Musish/Musish","commit_stats":{"total_commits":753,"total_committers":32,"mean_commits":23.53125,"dds":0.6746347941567066,"last_synced_commit":"9846878b0a0bb59a627d60784e092e636b933244"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Musish%2FMusish","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Musish%2FMusish/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Musish%2FMusish/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Musish%2FMusish/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Musish","download_url":"https://codeload.github.com/Musish/Musish/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222510448,"owners_count":16995488,"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","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":["apple","apple-music","music","musickit","musickitjs","react"],"created_at":"2024-08-01T06:02:25.958Z","updated_at":"2024-11-02T13:31:36.565Z","avatar_url":"https://github.com/Musish.png","language":"TypeScript","readme":"![Musish](https://i.imgur.com/ROMO267.png)\n\n# Musish ([musi.sh](https://musi.sh/))\n\nThe unofficial open source Apple Music webapp.\n\nBuilt with React and Apple's MusicKit JS while utilising the official Apple Music API.\nContains some serverless functions deployed with AWS Lambda to speed up certain functionalities. (Found in [backend](https://github.com/Musish/Musish/tree/master/src/backend)).\n\n[![CircleCI](https://img.shields.io/circleci/project/github/Musish/Musish/master.svg)](https://circleci.com/gh/Musish/Musish) ![Dependencies](https://img.shields.io/david/musish/musish.svg) [![OpenCollective](https://opencollective.com/musish/backers/badge.svg)](https://opencollective.com/musish)\n\n![Musish Browse Page](https://i.imgur.com/TFJyZnu.png)\n\n## Looks neat, how can I contribute?\n\nThe Musish project welcomes contributions of all sorts; PRs, issues, feedback, comments, donations, or even just sharing the project would all be infinitely useful to us!\n\nPlease do remember to read our contributing guidelines before making a pull request.\n\nWe also welcome financial contributions in full transparency on our [open collective](https://opencollective.com/musish), and we are extremely thankful for all those who have contributed already:\n\n[![Backers on Open Collective](https://opencollective.com/musish/tiers/backer.svg?avatarHeight=36\u0026width=600)](https://opencollective.com/Musish)\n\nA massive thank you also to our code contributors, who you can see [here](https://github.com/Musish/Musish/graphs/contributors)\n\n## Self hosting\n\nBuilding [Musi.sh](https://musi.sh/) requires [node](https://nodejs.org/en/) and [yarn](https://yarnpkg.com/lang/en/docs/install/).\n\n#### Running the Musish web app:\n\n##### 1. Generating an Apple Developer Token (JWT):\n\nMusish uses the Apple Music API and therefore you'll need a signed developer token from Apple.\n\nPlease reference [Apple's official guide](https://developer.apple.com/documentation/applemusicapi/getting_keys_and_creating_tokens) on generating the keys and an associated token.\n\n##### 2. Environment setup:\n\nMusish requires two environment variables to start. You'll need to enter your Apple Developer token as `APPLE_TOKEN`, and a link to your hosted Musish backend with `BACKEND_URL`.\n\n.env.example:\n\n```txt\nAPPLE_TOKEN=your_apple_music_token\nBACKEND_URL=https://musish.app\n```\n\n##### 3. Install dependencies:\n\n```shell\nyarn\n```\n\n##### 4. Launch Musish:\n\nStart webpack dev server on port 8080:\n\n```shell\nyarn start\n```\n\n_Or:_\n\n```shell\nyarn build\n```\n\nThis will create a directory called `dist` in the project root, these files can be served from a web server as static content.\n\n#### Running the Musish backend:\n\nWe use [Serverless](https://serverless.com) to run our backend on AWS lambdas, however you can choose differently here.\n\n##### Generating a Genius Developer Token:\n\nIf you wish to work on the Musish project's serverless backend, you will require a Genius Developer token.\n\nCreate a client access token via [Genius' developer portal](https://genius.com/developers).\n\n## Is it safe?\n\nMusish uses official Apple public APIs and libraries to handle authentication. The user is prompted to login directly on a new window under the Apple.com domain. Apple.com returns the user a temporary valid token to allow their browser to make requests to Apple Music data only.\n\nAt no point do we request, log, or gain access to information from a user of the site. The user's token is never sent to any server other than Apple's own. At no point do we ever intentionally pass any user information to any server which we control.\n\nOur official build (https://musi.sh/) is powered by Github Pages with an AWS lambda providing both lyrics and artist information, we send no cookies or headers related to your Apple account.\n\n---\n\nCredits:\n\n- Musish logo (headphone icon) provided by zidney from the Noun Project.\n","funding_links":["https://opencollective.com/musish","https://opencollective.com/Musish"],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMusish%2FMusish","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMusish%2FMusish","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMusish%2FMusish/lists"}